对于集合
集合本身就有不重复性,itertools在py3中返回的是一个地址,需要转成list才可以打印出来
from itertools import combinations s={"Q","w","w","w","q","q","e"} print(combinations(s,3)) print(list(combinations(s,3)))
打印:
<itertools.combinations object at 0x0000015655AC88B8>
[('w', 'Q', 'q'), ('w', 'Q', 'e'), ('w', 'q', 'e'), ('Q', 'q', 'e')]
输入集合,排序的时候回自动去重
对于列表
from itertools import combinations s=["w","w","q","q","e"] print(combinations(s,2)) print(list(combinations(s,2)))
打印:
<itertools.combinations object at 0x0000015FBE3488B8>
[('w', 'w'), ('w', 'q'), ('w', 'q'), ('w', 'e'), ('w', 'q'), ('w', 'q'), ('w', 'e'), ('q', 'q'), ('q', 'e'), ('q', 'e')]
列表包含打印的全部(不包括自己和自己的组合以外)的组合