Wenn Sie die Listeneinschlussnotation verwenden, können Sie Elemente, die Sie nicht in die resultierende Liste aufnehmen möchten, mit if ausschließen. Zum Beispiel der folgende Code
[ x for x in [1, 2, 3, ] if x > 2]
Auf diese Weise enthält die resultierende Liste nur 3. Zu diesem Zeitpunkt gibt es einen Fall, in dem eine Funktion auf x angewendet wird und eine Filterung nach dem angewendeten Wert durchgeführt werden soll. Zum Beispiel der folgende Code
def f(x):
x = x * 2
return x
[ f(x) for x in [1, 2, 3, ] if f(x) > 2]
Auf diese Weise enthält die resultierende Liste 4, 6. ~~ Wichtig ist, dass in diesen Fällen die Methode f für jedes Element nur einmal ausgeführt wird. ~~ -> Dieser Teil ist falsch.
Recommended Posts