給定乙個可迭代sequence,對其中的值進行出現次數統計:
方法1:
def
get_counts
(sequence):
counts = {}
for x in sequence:
if x in counts:
counts[x] += 1
else:
counts[x] = 1
return counts
方法2:
利用python中內建的collections
from collections import defaultdict
defget_counts2
(sequence):
counts = defaultdict(int) #所有的值均會被初始化為0
for x in sequence:
counts[x] +=1
return counts
方法3:
from collections import counter
counts = counter(sequence)
#其中可以用counts.most_common(10)對出現最多的十個倒序排列
然後對得到的統計排序:
def
top_count
(count_dic, n=10):
#預設取最大的n=10個值
value_key_pairs = [(count,data) for counts,data in cout_dict.items()]
value_key_pairs.sort()
#sorted(value_key_pairs) 兩者均可
return value_key_pairs[-n:]
python可迭代 python中可迭代物件有哪些
python中的可迭代物件有哪些?python中的可迭代物件有 列表 元組 字典 字串 常結合for迴圈使用 判斷乙個物件是不是可迭代物件 from collections import iterable isinstance list range 100 iterable isinstance s...
Python 如何實現可迭代物件和迭代器物件
一 通過可迭代物件和python內建函式iter 得到迭代器 即,iter 可迭代物件 得到乙個迭代器 例 list 1 1,2,3,4,5 1 iter 物件 若此物件想滿足迭代要求,其內部要有迭代介面或者乙個序列 iter 或者 getitm 2 迭代器只有乙個介面 next 呼叫next 時會...
Python 可迭代物件
1.可迭代物件 以直接作用於for迴圈的資料型別有以下幾種 一類是集合資料型別 如 list tuple dict set str等 一類是generator,包括生成器和帶yield 的 generator function 這些可以直接作用於for迴圈的物件統稱為可迭代物件 iterable 2...