close
一.排列
from itertools import permutations print(list(permutations("ABCD",2))) #[('A', 'B'), ('A', 'C'), ('A', 'D'),('B', 'A'), ('B', 'C'), ('B', 'D'), ('C', 'A'), ('C', 'B'),('C', 'D'), ('D', 'A'), ('D', 'B'), ('D', 'C')]
二.組合
from itertools import combinations print(list(combinations("ABCD",2))) #[('A', 'B'), ('A', 'C'), ('A', 'D'),('B', 'C'), ('B', 'D'), ('C', 'D')]
三. 元素可重複的組合
from itertools import combinations_with_replacement print(list(combinations_with_replacement("ABCD",2))) #[('A', 'A'), ('A', 'B'), ('A', 'C'), ('A', 'D'),('B', 'B'), ('B', 'C'), ('B', 'D'), ('C', 'C'),('C', 'D'), ('D', 'D')]
四.笛卡兒積(參數數量不限,每堆取一個元素做搭配。
from itertools import product print(list(product('ABC', 'xyz'))) print(list(product('AB', 'xy','12'))) #[('A', 'x'), ('A', 'y'), ('A', 'z'), ('B', 'x'),('B', 'y'), ('B', 'z'), ('C', 'x'), ('C', 'y'),('C', 'z')] #[('A', 'x', '1'), ('A', 'x', '2'), ('A', 'y', '1'),('A', 'y', '2'), ('B', 'x', '1'), ('B', 'x', '2'),('B', 'y', '1'), ('B', 'y', '2')]
文章標籤
全站熱搜
留言列表