您好,登錄后才能下訂單哦!
1、namedtuple
from collections import namedtuple
websites = [
('Sohu', 'http://www.google.com/', u'張朝陽'),
('Sina', 'http://www.sina.com.cn/', u'王志東'),
('163', 'http://www.163.com/', u'丁磊')
]
Website = namedtuple('Website', ['name', 'url', 'founder'])
mywebsite = Website('ading', 'http://blog.65535.fun', u'林天來')
print(mywebsite.name)
print(mywebsite.url)
print(mywebsite.founder)
for website in websites:
website = Website._make(website)
print website
2、deque
In [1]: from collections import deque
In [2]: mydeque = deque(maxlen=10)
In [3]: mydeque.maxlen
Out[3]: 10
In [4]: mydeque.append(1)
In [5]: mydeque.append(10)
In [6]: mydeque
Out[6]: deque([1, 10])
In [7]: mydeque.appendleft('a')
In [8]: mydeque.appendleft('b')
In [9]: mydeque
Out[9]: deque(['b', 'a', 1, 10])
In [10]: mydeque.pop()
Out[10]: 10
In [11]: mydeque
Out[11]: deque(['b', 'a', 1])
In [12]: mydeque.popleft()
Out[12]: 'b'
In [13]: mydeque
Out[13]: deque(['a', 1])
deque 還有常用的方法 :copy,reverse, insert, clear
3、OrderedDict
使用dict時,在遍歷字典時是無法指定key的順序的,但OrderedDict 是可以的
In [1]: from collections import OrderedDict
In [2]: od = OrderedDict
In [3]: od = OrderedDict()
In [4]: od['aa'] = 11
In [5]: od['bb'] = 22
In [6]: od['cc'] = 33
In [7]: od
Out[7]: OrderedDict([('aa', 11), ('bb', 22), ('cc', 33)])
4、defaultdict
默認值是在調用difaultdict 時傳入一個可調用函數。
In [1]: from collections import defaultdict
In [2]: df = defaultdict(lambda: 'aa')
In [3]: df['key1'] = 11
In [4]: df['key2']
Out[4]: 'aa'
In [5]: df
Out[5]: defaultdict(<function main.<lambda>()>, {'key1': 11, 'key2': 'aa'})
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。