Es ist ein Unterschied ob man ein Sprachkonstrukt falsch verwendet, oder ob es richtig verwendet wird, im Kontext aber etwas effizienteres möglich wäre. Wobei Effizienz ein komisches Argument ist wenn man das erstellen einer völlig sinnlosen Liste verteidigen möchte. Dann hättest Du mindestens mal so konsequent sein sollen eine „set comprehension“ zu verwenden, damit das einen konstanten Speicherverbrauch hat, die ganzen sinnfreien `None`-Werte zu sammeln. (Wäre auch noch näher an der Mathematik, denn die Zermelo-Fraenkel-Notation auf die die „comprehension“-Syntax anspielt, beschreibt ja im Original Mengen.)
Man könnte auch sagen die Liste hätte besser ein Generatorausdruck sein sollen, oder die Multiplikation der Zeichenkette hätte mit in der Liste oder dem Generatorausdruck stecken sollen. Das sind aber alles Fragen die nichts mit dem Punkt zu tun haben, dass eine „list comprehension“ dafür gedacht ist eine Liste zu erstellen und nicht dazu eine beliebige Schleife zu ersetzen bei der es nur im den Seiteneffekt und nicht um das sammeln von generierten Werten geht.
Schwierigkeit mit Problem
- __blackjack__
- User
- Beiträge: 13116
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Netter Versuch __blackjack__ es ging jetzt aber um die Frage ob man vor dem Iterieren die zu iterierenden Elemente in einer Listcomprehension aufsammeln muss, oder ob es dazu Alterntiven gibt. Frage mich aber bitte nicht warum das überhaupt ein Thema ist.