itertools を使います。
順列(Permutation)
# -*- coding: UTF-8 -*- import itertools for s in itertools.permutations(['A','B','C'], r=3): print(s)
重複ありの順列(Repetition Permutation)
for s in itertools.product(['A','B','C'], repeat=3): print(s)
組み合わせ(Combination)
for s in itertools.combinations(['A','B','C'], 3): print(s)
重複ありの組み合わせ(Homogeneous)
for s in itertools.combinations_with_replacement(['A', 'B', 'C'], 3): print(s)