2017-09-08 51 views
-2

我目前正在使用列表的遊戲,並根據列表中是否存在重複列表(根本基於文本的遊戲)提供用戶選擇,但是我似乎無法代碼的東西,承認如果沒有循環沒有重複,並檢查每個數字的計數是否大於1.我真的只是需要的東西,將檢查列表是否包含沒有重複,這樣我就可以編寫剩餘的程序。python:識別列表是否有重複的號碼

所以僞代碼看起來是這樣的

數= [1,3,5,6]重複

檢查表

如果沒有重複:

do x 
+1

的[在一個平面列表檢查重複]可能的複製(https://stackoverflow.com/questions/1541797/check-for-duplicates-in-a-flat-list) –

+0

喜@ sam-a,請提供[mcve] –

+0

歡迎使用Stack Overflow!請[編輯]您的問題以顯示[迄今爲止的代碼](http://whathaveyoutried.com)。你至少應該包括一個你遇到問題的代碼大綱(但最好是[mcve]),然後我們可以嘗試幫助解決具體問題。你還應該閱讀[問]。 –

回答

0

您可以檢查列表集合的長度並與其常規長度進行比較:

l = [1, 3, 32, 4] 
if len(set(l)) == len(l): 
    pass 
2

使用設置功能與排序:

if sorted(set(y)) == sorted(y): 
    pass 

集從給定的列表中刪除重複因此它很容易檢查,如果您的列表中有重複。排序它的可選,但如果你讓用戶選擇以其他順序輸入數字,這將是有幫助的。

set() sorted()

簡單的解決方案,如果你不需要排序使用:

len(y) != len(set(y)) 

它的速度更快,因爲ü不需要在兩個列表中使用排序。它的迴歸是錯誤的。

Check for duplicates in a flat list