码迷,mamicode.com
首页 > 其他好文 > 详细

一日一库—itertools

时间:2019-03-30 18:49:00      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:实现   rom   count()   list   通过   ===   ext   mda   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

#==========================未完===============================

 

一日一库—itertools

标签:实现   rom   count()   list   通过   ===   ext   mda   count   

原文地址:https://www.cnblogs.com/alplf123/p/10628314.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!