一、介绍
itertools 是python的迭代器模块,itertools提供的工具相当高效且节省内存。使用这些工具,你将能够创建自己定制的迭代器用于高效率的循环。
二、模块使用与代码
1、元素的组合
itertools测试数据binations(iterable, r)
iterable:一个可迭代对象。 r:取tierable对象中r个元素进行组合。
注意:函数返回的时一个迭代器。
代码示例:
import itertools
x=[1,2,3]
combin_1=itertools测试数据binations(x,1) #取1个数进行组合,生成的时一个迭代器
combin_2=itertools测试数据binations(x,2) #取2个数进行组合,生成的是一个迭代器
print(‘combin_1:‘,list(combin_1)) #将迭代器转为列表并打印
print(‘\ncombin_1、combin_2的数据类型:‘,type(combin_1))
print(‘\n输出迭代器每次迭代内容:‘)
for i in combin_2:
print(i)
‘‘‘
结果:
combin_1: [(1,), (2,), (3,)]
combin_1、combin_2的数据类型: <class ‘itertools测试数据binations‘>
输出迭代器每次迭代内容:
(1, 2)
(1, 3)
(2, 3)
‘‘‘
2、数据的排列
itertools测试数据binations(iterable, r)
iterable:一个可迭代对象。 r:取tierable对象中r个元素进行组合。
注意:函数返回的时一个迭代器。
import itertools
x=[1,2,3]
combin_1=itertools.permutations(x,1) #取1个数进行组合,生成的时一个迭代器
combin_2=itertools.permutations(x,2) #取2个数进行组合,生成的是一个迭代器
print(‘combin_1:‘,list(combin_1)) #将迭代器转为列表并打印
print(‘\ncombin_1、combin_2的数据类型:‘,type(combin_1))
print(‘\n输出迭代器每次迭代内容:‘)
for i in combin_2:
print(i)
‘‘‘
结果:
combin_1: [(1,), (2,), (3,)]
combin_1、combin_2的数据类型: <class ‘itertools.permutations‘>
输出迭代器每次迭代内容:
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
‘‘‘
查看更多关于python值itertools模块的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did170635