if statement in one-line for loop python
>>> [(i) for i in my_list if i=="two"]
['two']
if statement in one-line for loop python
>>> [(i) for i in my_list if i=="two"]
['two']
python inline if
Python does not have a trailing if statement.
There are two kinds of if in Python:
1. if statement:
if condition: statement
if condition:
block
2. if expression (introduced in Python 2.5)
expression_if_true if condition else expression_if_false
And note, that both print a and b = a are statements. Only the a part is an expression. So if you write
print a if b else 0
it means
print (a if b else 0)
and similarly when you write
x = a if b else 0
it means
x = (a if b else 0)
Now what would it print/assign if there was no else clause? The print/assignment is still there.
And note, that if you don't want it to be there, you can always write the regular if statement on a single line, though it's less readable and there is really no reason to avoid the two-line variant.
Copyright © 2021 Codeinu
Forgot your account's password or having trouble logging into your Account? Don't worry, we'll help you to get back your account. Enter your email address and we'll send you a recovery link to reset your password. If you are experiencing problems resetting your password contact us