Python排列组合

来源:互联网 发布:淘宝手机怎么上传宝贝 编辑:程序博客网 时间:2024/06/09 20:43

使用itertools

常见函数使用

函数 功能 product 笛卡尔积 permutations 排列 combinations 组合,没有重复 combinations_with_replacement 组合,有重复



code example

>>> import itertools>>> for i in itertools.product('ABCD', repeat = 2):...     print i,... ('A', 'A') ('A', 'B') ('A', 'C') ('A', 'D') ('B', 'A') ('B', 'B') ('B', 'C') ('B', 'D') ('C', 'A') ('C', 'B') ('C', 'C') ('C', 'D') ('D', 'A') ('D', 'B') ('D', 'C') ('D', 'D')>>> for i in itertools.permutations('ABCD', 2):...     print i,... ('A', 'B') ('A', 'C') ('A', 'D') ('B', 'A') ('B', 'C') ('B', 'D') ('C', 'A') ('C', 'B') ('C', 'D') ('D', 'A') ('D', 'B') ('D', 'C')>>> for i in itertools.combinations('ABCD', 2):...     print i,... ('A', 'B') ('A', 'C') ('A', 'D') ('B', 'C') ('B', 'D') ('C', 'D')>>> for i in itertools.combinations_with_replacement('ABCD', 2):...     print i,... ('A', 'A') ('A', 'B') ('A', 'C') ('A', 'D') ('B', 'B') ('B', 'C') ('B', 'D') ('C', 'C') ('C', 'D') ('D', 'D')





Ref
http://www.tuicool.com/articles/vIRryi

0 0
原创粉丝点击