python 2.6 引入了itertools模块,使得排列组合的实现非常简单:
代码如下:
import itertools
有序排列:e.g., 4个数内选2个排列:
代码如下:
>>> print list(itertools.permutations([1,2,3,4],2))
[(1, 2), (1, 3), (1, 4), (2, 1), (2, 3), (2, 4), (3, 1), (3, 2), (3, 4), (4, 1), (4, 2), (4, 3)]
无序组合:e.g.,4个数内选2个:
代码如下:
>>> print list(itertools.combinations([1,2,3,4],2))
[(1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)]
您可能感兴趣的文章:python 协程中的迭代器,生成器原理及应用实例详解Python迭代器iterator生成器generator使用解析python 生成器和迭代器的原理解析Python生成一个迭代器的实操方法python利用itertools生成密码字典并多线程撞库破解rar密码详解Python中的分组函数groupby和itertools)Python itertools模块详解Python中itertools模块用法详解Python迭代器模块itertools使用原理解析
排列
排列组合
Python