The Collections Module内建collections集合模块

https://www.bilibili.com/video/av17396749/?p=12

Python函数式编程中的迭代器,生成器详解

课程内容

1.iterators are objects that contain other objects
2.some built-in iterators are such as list,dict,tuple, and set.
3.learned the collections module offers other convenient iterators
4.generators are functions that yield and they are also iterators
5.understood that fenerators allow for lazy evaluation and coroutines,or light-weight threading.

 

以下是笔记

collections.namedtuple

namedtuple() is a factory function;that is,it generates a class,and not an instance of a class(an object)


two steps:
1.First,use namedtuple() to generate a class
2.then create an instance of this class

 1 from collections import namedtuple
 2 Person=namedtuple('Person',['name','age'])
 3 jay_z=Person(name='Sean Carter',age=47)
 4 print('%s is %s years old'%(jay_z.name,jay_z.age))
 5 print('%s is %s years old'%(jay_z[0],jay_z[1]))
 6 
 7 
 8 
 9 输出
10 
11 Sean Carter is 47 years old
12 Sean Carter is 47 years old

 

collections.OrderedDict

 1 from collections import OrderedDict
 2 d=OrderedDict([
 3 ('Lizard','Reptile'),
 4 ('Whale','Mammal')
 5 ]
 6 )
 7 
 8 for species,_class in d.items():
 9 print('%s is a %s'%(species,_class))
10 
11 
12 
13 输出:
14 
15 Lizard is a Reptile
16 Whale is a Mammal

 

collections.defaultdict

 1 from collections import defaultdict
 2 languages={
 3 'Jack':'java',
 4 'Pony':'Ruby',
 5 'Sara':'javascript'
 6 }
 7 d=defaultdict(lambda:'Python')
 8 d.update(languages)
 9 
10 输出:
11 python

 

posted @ 2018-04-30 16:29  xajh00789  阅读(169)  评论(0编辑  收藏  举报