列表中元素相同個數統計以及排序
阿新 • • 發佈:2019-01-23
統計列表中元素出現的次數,並找出出現次數最多的元素
例子
classList = ['a','a','b','b','b','c'] def majorityCnt(classList): classCount = {} # 1 統計列表中元素出現的次數,並存儲在字典中 for vote in classList: #classCount[vote] = classCount.get(vote, 0) + 1 # 可以代替下面三行程式碼 if vote not in classCount: classCount[vote] = 0 classCount[vote] += 1 # classCount={'c': 1, 'b': 3, 'a': 2} # 2 根據字典中的key或者value進行排序 # e[0]根據key進行排序,e[1]根據value進行排序;預設為升序排序,reverse=Fault # 返回為元組列表的形式 [('b', 3), ('a', 2), ('c', 1)] sortedClassCount = sorted(classCount.items(),key = lambda e:e[1], reverse=True) # 3 返回出現次數最多的元素 return sortedClassCount[0][0] print( majorityCnt(classList))