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学起。

猜你喜欢

转载自blog.csdn.net/alvin_2005/article/details/80474990