Schwierigkeit mit Problem

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
__blackjack__
User
Beiträge: 13116
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

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.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
rogerb
User
Beiträge: 878
Registriert: Dienstag 26. November 2019, 23:24

Netter Versuch __blackjack__ :wink: 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.
Sirius3
User
Beiträge: 17754
Registriert: Sonntag 21. Oktober 2012, 17:20

Ich wollte mit meinem Beispiel nur zeigen, wann eine Listcomprehension sinnvoll sein _kann_, und wann sie definitiv falsch ist.
Antworten