在Python中的字符串中重复

时间:2014-04-13 18:57:26

标签: python list scripting duplicates

我意识到这个问题已被无数次问过,但我已经开始研究它了。我试图检查重复元素的列表,并打印两个响应中的任何一个,具体取决于是否有任何重复。

我不希望删除重复项,只是为两种情况中的任何一种显示唯一消息:如果字符串中有任何重复项。

我创建了以下脚本,但它打印了七行。我希望减少到一句话。感谢。

my_list.sort()

for i in range(0,len(my_list)-1):   
    if my_list[i] == my_list[i+1]: 
        duplicates += 1 
    elif duplicates > 0:
        print "There were duplicates found."
    else:
        print "There were no duplicates"

我在互联网上花了很多时间试图在问社区之前找到解决问题的方法 - 如果这是一个非常非常简单的问题,我会事先道歉。

1 个答案:

答案 0 :(得分:4)

也许最直接的方法是利用set将消除用于创建它的迭代中找到的任何重复这一事实。如果字符串中字母集的长度不同于字符串的长度,则必须至少有一个副本。

>>> def areDupes(s):
...    return len(set(s)) != len(s)
...
>>> areDupes('abcdef')
False
>>> areDupes('abcdeff')
True