变量返回“[]”而不是期望的结果。
S = set(['a', 'b','d','z','x','y'])
collect = set()
step = set([''])
while step:
step = set(a+b for a in step for b in S if len(a+b) == 6)
collect |= step
print sorted(collect)
另外,我怎样才能使这个循环播放组合而不是集合?
答案 0 :(得分:4)
不知道“期望的结果”意味着什么,这是你的第二个问题:
>>> len('' + 'a')
1
(第一个问题是缩进。)
所以... wtf你在用这条线做什么?
step = set(a+b for a in step for b in S if len(a+b) == 6)