collections模組的Counter類

2021-08-28 03:36:19 字數 1393 閱讀 2253

counter類:counter類的目的是用來跟蹤值出現的次數。它是乙個無序的容器型別,以字典的鍵值對形式儲存,其中元素作為key,其計數作為value。計數值可以是任意的interger(包括0和負數)。counter類和其他語言的bags或multisets很相似。

1. 建立counter()類

from collections import counter

c = counter() # 建立乙個空的counter類

c = counter('gallahad') # 從乙個可iterable物件(list、tuple、dict、字串等)建立

c = counter() # 從乙個字典物件建立

c = counter(a=4, b=2) # 從一組鍵值對建立

2. 計數值的訪問與缺失的鍵

當所訪問的鍵不存在時,返回0,而不是keyerror;否則返回它的計數。

3. 計數器的更新

可以使用乙個iterable物件或者另乙個counter物件來更新鍵值。

計數器的更新包括增加和減少兩種。其中,增加使用update()方法:

減少則使用subtract()方法:

4. 鍵的刪除

當計數值為0時,並不意味著元素被刪除,刪除元素應當使用del

該方法返回乙個迭代器。元素被重複了多少次,在該迭代器中就包含多少個該元素。元素排列無確定順序,個數小於1的元素不被包含。

該方法返回乙個topn列表。如果n沒有被指定,則返回所有元素。當多個元素計數值相同時,排列是無確定順序的。

7. 淺拷貝copy

參考「:

collections 模組的使用

collections是python內建的乙個集合模組,提供了許多有用的集合類。collections.namedtuple 是乙個工廠函式,它可以用來構建乙個帶欄位名的元組和乙個有名字的類 這個帶名字的類對除錯程式有很大幫助 用 namedtuple 構建的類的例項所消耗的記憶體跟元組是一樣的,因...

collections 好用的模組

2.ordereddict 1.1 示例1from collections import namedtuple pepole namedtuple people name age gender person pepole name 小明 age 18 gender 男 print person pr...

collections 模組整理

collections.deque 類 雙向佇列 是乙個執行緒安全 可以快速從兩端新增或者刪除元素的資料型別。而且如果想要有一種資料型別來存放 最近用到的幾個元素 deque 也是乙個很好的選擇。這是因為在新建乙個雙向佇列的時候,你可以指定這個佇列的大小,如果這個佇列滿員了,還可以從反向端刪除過期的...