x = 'foo' if bar else 'baz'
b.append(a) if a is not None else None
value_when_true if condition else value_when_false
Better Example: (thanks Mr. Burns)
'Yes' if fruit == 'Apple' else 'No'
Now with assignment and contrast with if syntax
fruit = 'Apple'
isApple = True if fruit == 'Apple' else False
vs
fruit = 'Apple'
isApple = False
if fruit == 'Apple' : isApple = True
>>> [(i) for i in my_list if i=="two"]
['two']
condition = True
# Simple 2-Liner Method
if condition:
print('hi')
# Method 1: One-Liner If
if condition: print('hi')
# Method 2: Ternary with Dummy
print('hi') if condition else None
# Method 3: Ternary with Dummy for Assignment
x = 42 if condition else None
# Method 4: Short circuiting
condition and print('hi')
# value_when_true if condition else value_when_false