Python學習筆記(十四)內建模塊之collections

參考資料:https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001411031239400f7181f65f33a4623bc42276a605debf6000

1、collections是Python內建的一個集合模塊,提供了許多有用的集合類。

2、namedtuple:命名元組類,通過給定名稱及元素名稱動態創建一個元組類。如:Point=namedtuple('Point', ['x', 'y']),創建一個用於表示點座標的元組類Point。

3、deque:雙向列表。

4、defaultdict:通過傳入函數的方式在創建字典時爲不存在的鍵值訪問給定一個默認值。

5、OrderedDict:按照鍵值賦值順序排序的字典。

6、Counter:可實現簡單計數的字典類。

下面是我的學習代碼:

from collections import namedtuple
from collections import deque
from collections import defaultdict
from collections import OrderedDict
from collections import Counter
def Test():
    Point = namedtuple("Point", ["x", "y"]);
    p = Point(10, 20)
    print 'define a namedtuple: Point(%d, %d)' % (p.x, p.y)
    q = deque()
    print 'define an empty deque:', q
    q.append(1)
    print 'deque after append:', q
    q.appendleft(0)
    print 'deque after appendleft:', q
    q.pop()
    print 'deque after pop:', q
    q.popleft()
    print 'deque after popleft:', q
    d = defaultdict(lambda: 'N/A')
    print 'define a defaultdict with default value N/A:', d
    d['key1'] = 12
    print 'set value to the key named key1:', d
    print 'output a default value when the key is not exist:', d['key2']
    d1 = dict([('a', 1), ('b', 2), ('c', 3)]);
    d2 = OrderedDict([('a', 1), ('b', 2), ('c', 3)]);
    print 'a dict with non-ordered keys:', d1
    print 'a dict with ordered keys:', d2
    print d2['a']
    c = Counter()
    for ch in 'abcdeefggghijklacd':
        c[ch] = c[ch] + 1
    print 'Counter for abcdeefggghijklacd:', c
今天就學習到這裏,下一節從base64學起。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章