首页 > 代码库 > itertools
itertools
itertools是python内置的一个迭代器工具模块,提供很多方法,创建各种各样的迭代器。
python文档中写着,该模块式python2.3引入的,基本常用的python的解释器都是python2.4之后的。所以,基本不会遇上没有提供支持的情况。
下面主要介绍常用的三个:
islice():
一个迭代器的切片函数,用于抽取一个迭代器的特定位置的数据。
tee():
从一个迭代器上,放回n个独立的迭代器。n默认为2,所以未传n值时,放回的是两个迭代器。
把n设为1的话,会放回一个迭代器,但是是放在一个元组中的。
groupby():
对迭代器的重复元素分组,一个例子:
get uuuuuuup
groupby之后就是:
1g1e1t1" "7u1p
下面是一个解压和压缩的例子:
1 from itertools import groupby 2 def compress(data): 3 return ((len(list(group)),name) 4 for name,group in groupby(data)) 5 def decompress(data): 6 return (car*size for size,car in data) 7 if __name__ == ‘__main__‘: 8 l=list(compress(‘get uuuuuuuuuuuuuuuup‘)) 9 print l 10 print ‘‘.join(decompress(l))
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。