x = 'foo' if bar else 'baz'
value_when_true if condition else value_when_false
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
b.append(a) if a is not None else None
>>> [(i) for i in my_list if i=="two"]
['two']
def even_odd(n):
return "even" if n % 2 == 0 else "odd"
[ x if x%2 else x*100 for x in range(1, 10) ]
visitorScore = res[3] if res[4] is not None else ""
var = [expression1] if [condition] else [expression2]
if condition:
value = true-expr
else:
value = false-expr
# The same can be written in single line:
value = true-expr if condition else false-expr
# value_when_true if condition else value_when_false
[what to do when condition=true] if [condition] else [what to do when condition=false]