1. 程式人生 > >檢查一個列表是否有重複元素

檢查一個列表是否有重複元素

《像電腦科學家一樣思考Python》第10章練習10-7

編寫一個名為has_duplicates的函式接收一個列表,當其中任何一個元素出現多於一次時返回True。

它不應當修改原始列表。

 

※自己實現的程式碼(用while迴圈)

def has_duplicates(t):
    new_t = sorted(t)
    index = 0
    length = len(new_t)

    while index < length-1:
        if new_t[index] == new_t[index+1]:
            return True
        else:
            index += 1
    return False

t = ['a','b','C','D','A','C']
print(has_duplicates(t))

 

 ※官方實現的程式碼(用for迴圈)

def has_duplicates(s):
    t = list(s)
    t.sort()

    for i in range(len(t)-1):
        if t[i] == t[i+1]:
            return True
    return False

t = ['a','b','C','D','A','C']
print(has_duplicates(t))