您的位置:首页 > 编程语言 > Python开发

Python排列组合实验

2015-06-12 12:13 736 查看
import itertools

排列: 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)]

组合:4个数内选2个:
>>> print list(itertools.combinations([1,2,3,4],2))
[(1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)]

_____________________________________

ABCDE 5个数的排列(去掉重复):
>>>len(set(list(itertools.permutations(['A','B','C','D','E'],5))))
120

AABCD 5个数不同的排列(去掉重复):
>>>len(set(list(itertools.permutations(['A','A','B','C','D'],5))))
60

AABBC(去掉重复):
>>> len(set(list(itertools.permutations(['A','A','B','B','C'],5))))
30

AAABC(去掉重复):
>>> len(set(list(itertools.permutations(['A','A','A','B','C'],5))))
20

AAABB(去掉重复):
>>> len(set(list(itertools.permutations(['A','A','A','B','B'],5))))
10

AAAAB(去掉重复):
>>> len(set(list(itertools.permutations(['A','A','A','A','B'],5))))
5
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: