python中itertools模块的简单介绍和使用

       python中很多的对象都是可迭代的,比如一些基础数据结构。python给我们提供了很多的迭代环境,这样方便利用迭代进行元素的循环计算。此外,python还有一个itertools模块,其是一个产生迭代器的模块,其中有很多产生各种迭代器的方法,灵活运用itertools的方法,可以生成各种各样的迭代器,可以使我们的迭代算法变得简洁优雅而高效。

       下面我们通过简单的介绍一个itertools中的product()、permutations()、combinations()使用来对itertools有一个大概的了解,当然其中还有很多其他的方法,具体的可以自己查看官方文档说明。

       product(*iterables,repeat=1)方法,可以传入可变的可迭代对象的参数列表,repeat表示对传入的对象进行几次的重复笛卡尔积,默认为1,返回一个内容为笛卡尔积的product迭代器对象;permutations()表示排列,例如permutations([0,1,2],3)表示对0,1,2进行一个全排列,返回一个内容为排列后的元组元素构成的permutations迭代器对象;combinations()表示组合,例如combinations([0,1,2,3],2)表示从0,1,2,3中选取两个元素,返回一个组合后由元组构成的combinations迭代对象。具体的例子和代码可以看下图。

猜你喜欢

转载自blog.csdn.net/S_o_l_o_n/article/details/80921063
今日推荐