python 對給定可迭代集合統計出現頻率,並排序

2021-07-24 04:21:29 字數 965 閱讀 7139

給定乙個可迭代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...