Verwenden itertools.product
import itertools
lst = list(itertools.product([0, 1], repeat=3))
Diese eine Liste von Tupeln ergeben wird (siehe here)
Sie können ganz einfach diese eine repeat
Variable verwenden ändern:
n = 3
lst = list(itertools.product([0, 1], repeat=n))
Wenn Sie eine Notwendigkeit Liste der Listen, dann können Sie die map
Funktion verwenden (danke @Aesthete).
lst = map(list, itertools.product([0, 1], repeat=n))
Oder in Python 3:
lst = list(map(list, itertools.product([0, 1], repeat=n)))
# OR
lst = [list(i) for i in itertools.product([0, 1], repeat=n)]
Beachten Sie, dass mit map
oder eine Liste Verständnis bedeutet, dass Sie das Produkt nicht in eine Liste konvertieren müssen, wie es durch das itertools.product
Objekt iteriert wird und Erstelle eine Liste.
@eumiro bekommen können, Ich denke meine Frage entspricht auch dieser, http://stackoverflow.com/questions/3252528/converting-a-number-to-binary-with-a-fix Ed-Länge, aber diese Antwort gibt eine Zeichenfolge anstelle einer Liste. – LWZ