ich eine seltsame Python Anfänger Frage haben, .. Herumspielen in meinem virtuellen env im Interpreter (Python 3.5):„Backlog“ einer Schleife durch eine Liste in Python
ich eine Liste mit gemischten Typen haben:
lissi = ["foo", "bar". "boo", "baz", 4, 7]
Und dann "zufällig" versuchen, alle Elemente drucken in einer for-Schleife in einen String verkettet:
for x in lissi:
print("Hallo " + x)
Dies ist natürlich nicht possibl e bcs. wir können nicht konz. Ganzzahlen zu einem String - so werden die ersten Elemente gedruckt und dann gibt es einen TypeError.
Dann tippte ich nur "x" and enter
um zu sehen, ob es noch Daten gespeichert ist und ja es ist: x ist 4.
type(x)
ist int
(versucht, um herauszufinden, ob 7 auch noch da ist). Also meine Frage ist: Was passiert "unter der Haube" in Python in der for-Schleife: Scheint so, als ob jedes erfolgreich verarbeitete Element entfernt wird, aber es ist ein Backlog in x gespeichert, das das erste Element ist, das TypeError geworfen wurde zum? Und gibt es eine Möglichkeit, diese Daten im Fehlerfall aus dem Speicher zu "löschen"?
thx
Danke für die "das ist in Ordnung, da Schleifen [...]" Teil, so verstehe ich, ich habe keine Sorge, dass im sehr unwahrscheinlichen Fall s.o. würde eine gemischte Menge von Tausenden von Elementen durchlaufen, ohne zu überprüfen und ihre Typen zu kennen, wäre am Ende ein Speicher-/Oszilloskop-Problem :-) –