List comprehension else?

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.
Antworten
Holgi22
User
Beiträge: 19
Registriert: Mittwoch 3. Februar 2010, 20:39

hallo

sind else anweisungen in list comprehensions nicht möglich in der art,

Code: Alles auswählen

foo = [i for i in list if i > list[i] else i**2]
?????


gibt das da ein trick? :lol:
Hi Ha Ho
Benutzeravatar
Defnull
User
Beiträge: 778
Registriert: Donnerstag 18. Juni 2009, 22:09
Wohnort: Göttingen
Kontaktdaten:

Code: Alles auswählen

foo = [i if i > list[i] else i**2 for i in list]
Bottle: Micro Web Framework + Development Blog
Holgi22
User
Beiträge: 19
Registriert: Mittwoch 3. Februar 2010, 20:39

ahhh...coole sache :D python ist herrlich
Hi Ha Ho
Benutzeravatar
snafu
User
Beiträge: 6738
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Ich fänd `while` in LCs toll.
Benutzeravatar
gkuhl
User
Beiträge: 600
Registriert: Dienstag 25. November 2008, 18:03
Wohnort: Hong Kong

@snafu: Um was damit zu tun...?
derdon
User
Beiträge: 1316
Registriert: Freitag 24. Oktober 2008, 14:32

snafu hat geschrieben:Ich fänd `while` in LCs toll.
Ich fänd `break` in if-Blöcken toll.
BlackJack

@gkuhl: Also die Semantik von ``[f(x) for x in xs while x < 42]`` wäre IMHO syntaktischer Zucker für eine Kombination aus `itertools.takewhile()` und `map()`.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

derdon hat geschrieben:Ich fänd `break` in if-Blöcken toll.
Ich fänd Exception-Handling in LCs toll.

*jk*
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten