python返回一個列表中出現次數最多的元素
阿新 • • 發佈:2018-12-28
有好幾種辦法,由麻煩到簡單慢慢來
lt = ['小馬', '小敏', '小喬', '小敏', '小杜', '小杜', '小孟', '小敏'] def max_count(lt): # 定義一個字典,用於存放元素及出現的次數 d = {} # 記錄最大的次數的元素 max_key = None # 遍歷列表,統計每個元素出現的次數,然後儲存到字典中 for i in lt: if i not in d: # 計算元素出現的次數 count = lt.count(i) # 儲存到字典中 d[i] = count # 記錄次數最大的元素 if count > d.get(max_key, 0): max_key = i return max_key print(max_count(lt))
下面來個一行程式碼解決
# 直接統計
print(max(lt, key=lt.count))
再來一種
from collections import Counter
c = Counter(lt)
# print(dict(c))
print(c.most_common(1)[0][0])