# 一日一库——itertools from itertools import count, chain import operator # =======count========= # count 实现了一个无限累加器,默认从0开始累加,当然我可以给count一个默认初始值 # 从这个初始值开始
#一日一库——itertools from itertools import count, chain import operator #=======count========= #count 实现了一个无限累加器,默认从0开始累加,当然我可以给count一个默认初始值 #从这个初始值开始累加 # count 内部实现了__iter__ __next__ 因此它是一个迭代器,可以用通过next来迭代 c = count() print(c) print(next(c)) #0 第一次next返回默认值 print(next(c)) #1 以后则累加 #因此我可以for _ in c 产出无限大小值,但是不建议这样做,容易造成编辑器的卡死 c1 = count(10) print(next(c1)) cc = c1.__next__ print(cc()) #11 print(cc()) #12 #=======chain========= #遍历所有的可迭代的对象,直到所有参数可迭代对象被遍历完,并返回一个生成器; a = chain(‘a我c‘, ‘cde‘, ‘fgh‘) print(a) # 可以通过chain.from_iterables(); print(list(a.from_iterable([‘ac‘, ‘df‘]))) #[‘a‘, ‘c‘, ‘d‘, ‘f #==========================未完===============================