a = "Phaldo" def rotate(a): if len(a)==1: return [a] else: l = [] for i, c in enumerate(a): for r in rotate(a[:i]+a[i+1:]): l.append(c+r) return l print rotate(a)