2017-09-08 33 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