排列组合
排列
-
首先引入itertools模块
-
permutations 排列
-
from itertools import permutations lis = len(list(permutations([1,2,3,4,5],3))) print(lis) 结果是60 lis = len(list(permutations([1,2,3,4],3))) print(lis) 结果是24
组合
-
combinations 组合
-
from itertools import combinations lis = len(list(combinations([1,2,3,4,5],3))) print(lis) 结果是10
总结
显然,combinations方法重点在组合,permutations方法重在排列。
还有就是,combinations和permutations返回的是对象地址,原因是在python3里面,返回值已经不再是list,而是iterators(迭代器),
所以想要使用,只用将iterator 转换成list 即可, 还有其他一些函数返回的也是一个对象,需要list转换,比如 list(map())等
---------------------
原文链接:https://blog.csdn.net/mishi_zcf/article/details/52455688