1.1 collections
一些补充资料:
Python之List、Set、Tuple、Dictionary的区别
Python collections使用
import collections可以使用python自带的一些高级的数据结构。
- list:一个列表,类似数组,有序,元素不必都是同一种类型
- set:相当于dict的key,不可重复,无序
- tuple:可以看作不变的list
- dictionary:相当于HashMap,有key和value,key不可变
- OrderedDict:有序的dict(双向链表)
- namedtuple:有命名的tuple,需要一个OrderedDict模板的时候,namedtuple就更加有效率
- deque:是一个双向链表,针对list连续的数据结构插入和删除进行优化
- defaultdict:当修改未初始化的key-value时,会用默认值替换,其他功能与dict相同,也就是有default value的dict
- Counter:可以数数,操作同dict
除了collections的namedtuple以外,主要内容是学习特殊方法的构建。当构建好特殊方法之后,可以很方便使用python内置的方式如random.choice、reversed 和sorted这些函数
1.2 如何使用特殊方法
一些需要注意的点:
repr:比str更有泛用性,用%r来获取元素
特殊方法表格: