0
import itertools
def x(a,b):
    x = [[i] for i in itertools.product(a, repeat=b)]
    return [x]
print (x({0,1},3))

出力は

[[[(0, 0, 0)], [(0, 0, 1)], [(0, 1, 0)], [(0, 1, 1)], [(1, 0, 0)], [(1, 0, 1)], [(1, 1,    0)], [(1, 1, 1)]]]

私が望んでいるのは、このように見えることです。すべての () が削除され、開始と終了の [] が削除されます

[[0, 0, 0], [0, 0, 1], [0, 1, 0], [0, 1, 1], [1, 0, 0], [1, 0, 1], [1, 1, 0], [1, 1, 1]]  
4

1 に答える 1

0

なぜ単純に

return list(itertools.product(a, repeat=b))

または、要素をすべてリストにしたい場合は、

return map(list, itertools.product(a, repeat=b))

xまた、 という名前の関数内からという名前の変数への書き込みには注意してくださいx。これは再帰の問題を引き起こします。

于 2013-03-26T07:57:21.320 に答える