Ich muss eine Liste von Listen erstellen (jede innere Liste hat n
feste Elemente). Gerade jetzt, für n=3
Ich tue dies:Liste der Python kompakt erstellen
my_list = []
for x in range(min_inner max_inner + 1):
for y in range(min_outer, max_outer + 1):
for z in range(fixed_param):
my_list.append([x, y, z])
Als ich Liste Verständnis versucht, so etwas wie:
[[x,y,z] for x in range(1,4), y in range(1,4), z in range (4)]
ich einen Namen Fehler
NameError: name 'z' is not defined
Ist gibt es eine Liste Verständnis Weg, das zu tun? Bedenkt, dass n
kann eine beliebige Anzahl (obwohl nicht unbedingt beliebig groß)
Add für überall '[[x, y, z] für x im Bereich (1,4) für y im Bereich (1,4) für z im Bereich (4)]' ... –
Beachten Sie, dass ein Verständnis macht Ihren Code nur horizontal statt vertikal. Traditionelle Schleifen sind nicht automatisch schlecht. – TigerhawkT3