一、介绍
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