405 Stimmen

Pythonischer Weg zur Kombination von for-Schleife und if-Anweisung

Ich weiß, wie man sowohl for-Schleifen als auch if-Anweisungen in separaten Zeilen verwendet, z. B.:

>>> a = [2,3,4,5,6,7,8,9,0]
... xyz = [0,12,4,6,242,7,9]
... for x in xyz:
...     if x in a:
...         print(x)
0,4,6,7,9

Und ich weiß, dass ich ein Listenverständnis verwenden kann, um diese zu kombinieren, wenn die Aussagen einfach sind, wie z. B.:

print([x for x in xyz if x in a])

Aber ich kann nirgendwo ein gutes Beispiel finden (zum Kopieren und Lernen), das eine komplexe Reihe von Befehlen (nicht nur "print x") zeigt, die nach einer Kombination aus einer for-Schleife und einigen if-Anweisungen auftreten. Etwas, das ich erwarten würde, sieht so aus:

for x in xyz if x not in a:
    print(x...)

Ist dies einfach nicht die Art und Weise Python soll funktionieren?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X