Python--day19--collections模块

常用模块一的各个模块解释:

文件名不要起跟模块名一样:(模块本身就是一个py文件)

collection模块:

namedtuple方法:

例1:

 例2:

dequeue方法:双端队列

有序字典OrderedDict:

defaultdict默认字典:

 1 values = [11, 22, 33,44,55,66,77,88,99,90]
 2 
 3 my_dict = {}
 4 
 5 for value in  values:
 6     if value>66:
 7         if my_dict.has_key('k1'):
 8             my_dict['k1'].append(value)
 9         else:
10             my_dict['k1'] = [value]
11     else:
12         if my_dict.has_key('k2'):
13             my_dict['k2'].append(value)
14         else:
15             my_dict['k2'] = [value]
原生代码
 1 from collections import defaultdict
 2 
 3 values = [11, 22, 33,44,55,66,77,88,99,90]
 4 
 5 my_dict = defaultdict(list)
 6 
 7 for value in  values:
 8     if value>66:
 9         my_dict['k1'].append(value)
10     else:
11         my_dict['k2'].append(value)
defaultdict字典解决方法

使dict时,如果引用的Key不存在,就会抛出KeyError。如果希望key不存在时,返回一个默认值,就可以用defaultdict

1 >>> from collections import defaultdict
2 >>> dd = defaultdict(lambda: 'N/A')
3 >>> dd['key1'] = 'abc'
4 >>> dd['key1'] # key1存在
5 'abc'
6 >>> dd['key2'] # key2不存在,返回默认值
7 'N/A'
例2

Counter方法:计数

队列:queue   先进先出(没有索引)

猜你喜欢

转载自www.cnblogs.com/xudj/p/9828088.html