我正在使用Python,我試圖弄清楚如何確定列表中的所有數字是否相同或不同(即使只有一個整數不同),如果事先不知道元素的總數在列表中。最初我寫了這樣的東西:如果列表長度未知(Python),如何確定列表中的所有數字是相同還是不同?
def equalOrNot(lst):
if sum(lst)%len(lst)==0:
return False
else:
return True
但它並不適用於所有情況。有什麼建議麼? 謝謝
我正在使用Python,我試圖弄清楚如何確定列表中的所有數字是否相同或不同(即使只有一個整數不同),如果事先不知道元素的總數在列表中。最初我寫了這樣的東西:如果列表長度未知(Python),如何確定列表中的所有數字是相同還是不同?
def equalOrNot(lst):
if sum(lst)%len(lst)==0:
return False
else:
return True
但它並不適用於所有情況。有什麼建議麼? 謝謝
當然。您可以使用內置的all()
all(numbers[0] == number for number in numbers)
使用set
:
if len(set(lst)) == 1:
if lst.count(lst[0]) == len(lst):
或
if lst.reverse() == lst.sort():
檢查重複後,你的做法並不適用於所有情況下工作,例如'LST = [1,2,3]' – Jaco
你的解決方案應該將'總和(LST)'是多失敗'len(lst)'和所有數字不相等。 – pydev