itertools.combinations()不显示所有组合

时间:2016-05-07 18:52:39

标签: python

print(list(combinations('decoding',4)))

应该显示所有可能的四个字母组合吗? 但这是输出

  

[(' d',' e',' c',' o'),(' d' ;,'' c',' d'),(' d',' e',& #39; c',' i'),(' d',' e',' c',' n'),(' d',' e',' c',' g'),(' d& #39;,' e',' o',' d'),(' d',' e' ,' o' i'),(' d',' e',' o',&# 39; n'),(' d',' e',' o',' g'),(' ; d','' d''我'),(' d',' e&# 39;,' d',' n'),(' d',' e',' d', ' g'),(' d',' e',' i'' n'),(& #39; d',' e',' i',' g'),(' d',' e',' n'' g'),(' d',' c',' o' ;' d'),(' d',' c',' o',' i'), (' d',' c',' o',' n'),(' d',&# 39; C&#39 ;' o',' g'),(' d',' c',' d',& #39;我'),(' d',' c',' d',' n'),(&# 39; d',' c',' d',' g'),(' d',' c& #39;,'我'' n'),(' d',' c','我' ,'),(' d',' c',' n',' g'),( ' d',' o',' d',' i'),(' d',' ; o',' d',' n'),(' d',' o',' d&# 39;,' g'),(' d',' o',' i',' n') ,(' d',' o',' i',' g'),(' d',& #39; o',' n',' g'),(' d',' d','我'' n'),(' d',' d','我',' g&#39 ;),(' d'' d',' n'' g'),' d' ,'我' n'' g'),(' e',' c',&# 39; o',' d'),(' e'' c',' o',' i& #39) ,(' e',',' o',' n'),(' e',& #39; c',' o',' g'),(' e',' c',' d',' i'),(' e',' c',' d',' n' ;),(' e'' c',' d',' g'),' e' ,''我'' n'),(' e',' c',&# 39;我'' g'),(' e'' c',' n',' g& #39;),(' e',' o',' d',' i'),(' e&# 39;,' o',' d',' n'),(' e',' o', ' d',' g'),(' e',' o',' i',' ;'),(' e',' o',' i',' g'),' e',' o',' n',' g'),(' e',' d' ;,'我' n'),(' e',' d','我',& #39; g'),(' e'' d',' n',' g'),(&# 39; e',' i',' n'' g'),(' c',' o& #39 ;, ' d','我'),(' c',' o',' d',' ;'),(' c',' o',' d',' g'),(' c',' o',' i',' n'),(' c',' o' ;,' i'' g'),(' c',' o',' n',& #39; g'),(' c',' d',' i',' n'),(&# 39; c',' d',' i',' g'),(' c',' d& #39;,' n',' g'),(' c',' i',' n' ,'),(' o',' d',' i'' n'),( ' o'' d',' i',' g'),(' o',' ; d',' n',' g'),(' o',' i',' n&# 39;,' g'),(' d','我',' n',' g') ]

据我所知 它缺少CODE。

知道为什么会发生这种情况,或者我做错了什么?

2 个答案:

答案 0 :(得分:5)

它存在于第一项('d', 'e', 'c', 'o')中,因为顺序无关紧要。如果您希望每个tuple中的每一个都按顺序排列,那么您正在寻找排列。

答案 1 :(得分:4)

这是因为combinations以字典排序顺序发出。相反,您需要使用permutations

>>> 'code' in [''.join(i) for i in permutations('decoding', 4)]
True