The Collections Module內建collections集合模塊
阿新 • • 發佈:2018-04-30
eva () efault -i actor ict tps CI 函數式編程
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 importOrderedDict 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
The Collections Module內建collections集合模塊