python之使用heapq()函數計算列表中數值大小
阿新 • • 發佈:2017-07-28
heapq all 列表 brush 語法 pytho class tom lar
# heapq函數:計算列表最大幾個值和最小幾個值 # 語法:heapq.nlargest(n, list,[key]) # n表示最大或最小的幾個; list為分析的對象; key為排序關鍵字,非必填 import heapq list_num = [1, 4, 3, 2, 5] print("最大的一個:", max(list_num)) # 求列表最大的兩個 list_temp = heapq.nlargest(2, list_num) print("最大的兩個:", list_temp) list_people = [ {‘name‘: ‘Mike‘, ‘age‘: 22}, {‘name‘: ‘Lee‘, ‘age‘: 25}, {‘name‘: ‘Tom‘, ‘age‘: 33}, {‘name‘: ‘Jack‘, ‘age‘: 41} ] # 求最年輕的兩個人 list_temp = heapq.nsmallest(2, list_people, lambda person: person[‘age‘]) print("最年輕的兩個人:", list_temp)
運行結果:
最大的一個: 5 最大的兩個: [5, 4] 最年輕的兩個人: [{‘name‘: ‘Mike‘, ‘age‘: 22}, {‘name‘: ‘Lee‘, ‘age‘: 25}]
python之使用heapq()函數計算列表中數值大小