概述:
itertools可以看成是一个迭代器的工具箱,里面包含许多函数用以生成各式各样的迭代器。
无限迭代器:
1 - count(
start=0, step=1):生成以start为起始,step为步长的无限数列
2 - cycle(
iterable):无限循环iterable的内容。例如iterable为'ABCD',那么迭代器将返回'A','B','C','D','A','B'......
有限迭代器:
1 - product(
*iterables[,repeat]):返回输入可迭代对象的卡迪尔积。
近似于嵌套for循环的一种生成器表示。例如,
product(A,B)会返回与
((x,y) for x in A for y in B)相同的结果。
通过repeat可以让可迭代对象自己与自己建立迭代序列。例如,
product(A, repeat=4)相当于
product(A, A, A, A)。