Seite 1 von 1

Liste oder Array in einer Schleife initialisieren

Verfasst: Dienstag 2. Dezember 2014, 14:09
von Pittan
Hallo,

ich habe häufig das Problem, dass ich eine Variable für eine Schleife benötige und diese direkt in der Schleife mit Werten befüllen möchte.
Konkret möchte ich z.B. im Moment ein Array oder eine Liste haben, in der ich matplotlib.pyplot.bar() hineinspeicher.
Prinzipiell ist das möglich indem man schreibt:

Code: Alles auswählen

y=plt.bar(0.4,1,0.5)
Das funktioniert auch mit numpyarrays.

Wenn ich aber nun diese ganzen plt.bars in einer Schleife erzeuge und möchte, dass diese in einer Variablen bzw. Array gespeichert werden, kriege ich ein Problem.
Was funktioniert, ist folgendes:

Code: Alles auswählen

for Value in range(10)):
                plt.bar(0.5, 10, 0.4)
Aber wie ist es möglich, die so erzeugten bars in einem Array zu speichern?

Danke
Gruß

Re: Liste oder Array in einer Schleife initialisieren

Verfasst: Dienstag 2. Dezember 2014, 14:56
von /me
Die Methode die von Anfängern gerne verwendet wird (bis sie die weiter unten beschriebene Methode kennen lernen):

Code: Alles auswählen

bars = []
for value in range(10):
    bars.append(plt.bar(0.5, 10, 0.4))
Übersichtlicher mit einer List comprehension.

Code: Alles auswählen

bars = [plt.bar(0.5, 10, 0.4) for value in range(10)]
Vermutlich möchtest du aber noch irgendetwas mit value machen und nicht zehnmal identische Dinge speichern.

Re: Liste oder Array in einer Schleife initialisieren

Verfasst: Montag 8. Dezember 2014, 07:03
von Pittan
Vielen Dank, das hat mir sehr weiter geholfen.

Gruß