Seite 1 von 1
While Loop Werte ausgeben
Verfasst: Mittwoch 19. Juni 2019, 08:39
von El_Furachier
Hallo miteinander,
ich habe ein relativ einfaches Problem, komme jedoch nicht auf die Lösung. Ich möchte gerne aus einer While Loop alle berechneten Werte in einem Array speichern. Anschließend möchte ich die Werte plotten. Dabei meine Laufvariable die mit Werten multipliziert wird um das Array a zu erhalten.
Ich kann die einzelnen Werte von a zwar in der Schleife als Punkte plotten, möchte jedoch die Werte zunächst als Array im Variablenmanager zur Verfügung haben.
Code: Alles auswählen
import matplotlib.pyplot as plt
i = 0
while i <= 5000:
a= 50*(i/100)+3
plt.plot(i,a,'o')
i += 1
Danke für eure Unterstützung!
Re: While Loop Werte ausgeben
Verfasst: Mittwoch 19. Juni 2019, 09:13
von Bolitho
Code: Alles auswählen
import matplotlib.pyplot as plt
i = 0
werte = [] # Werteliste erstellen
while i <= 5000:
a= 50*(i/100)+3
werte.append(a) # Wert zu Liste hinzufügen, erster Wert an Index 0, zweiter an Index 1 usw.
plt.plot(i,a,'o')
i += 1
print(a) # Ausgabe der Liste
Habe ich das Problem richtig verstanden?
Re: While Loop Werte ausgeben
Verfasst: Mittwoch 19. Juni 2019, 09:17
von Bolitho
was auch ginge:
Code: Alles auswählen
werte = []
for number in range(5001):
werte.append(50*(number/100)+3)
print(werte)
Re: While Loop Werte ausgeben
Verfasst: Mittwoch 19. Juni 2019, 09:30
von Sirius3
Wenn man eine einfache Zählschleife hat, nimmt man statt while eine for-Schleife.
Die komplizierte Rechnung `50*(i/100)` ließe sich zu `i/2` vereinfachen.
Wenn man aber sowieso nur gleichmäßig aufsteigende Zahlen haben will, nimmt man linspace:
Re: While Loop Werte ausgeben
Verfasst: Mittwoch 19. Juni 2019, 09:35
von El_Furachier
Sirius3 hat geschrieben: Mittwoch 19. Juni 2019, 09:30
Wenn man eine einfache Zählschleife hat, nimmt man statt while eine for-Schleife.
Die komplizierte Rechnung `50*(i/100)` ließe sich zu `i/2` vereinfachen.
Wenn man aber sowieso nur gleichmäßig aufsteigende Zahlen haben will, nimmt man linspace:
Danke für den Tipp, Meine tatsächliche Rechnung ist komplexer, ich habe hier nur ein vereinfachtes Beispiel herangezogen, um den Kern meiner Frage deutlich zu machen.

Re: While Loop Werte ausgeben
Verfasst: Mittwoch 19. Juni 2019, 09:42
von Bolitho
hast du denn deine Antwort und kommst weiten?
Code: Alles auswählen
# Variante 3
werte = [x/2+3 for x in range(5001)]
print(werte)
Re: While Loop Werte ausgeben
Verfasst: Mittwoch 19. Juni 2019, 09:57
von El_Furachier
Bolitho hat geschrieben: Mittwoch 19. Juni 2019, 09:42
hast du denn deine Antwort und kommst weiten?
Code: Alles auswählen
# Variante 3
werte = [x/2+3 for x in range(5001)]
print(werte)
Japp, habe es mit der for Variante realisiert.
Re: While Loop Werte ausgeben
Verfasst: Mittwoch 19. Juni 2019, 10:33
von Sirius3
@El_Furachier: auch deutlich komplexer geht mit numpy deutlich eleganter.