new_value = value_when_true if condition else value_when_false
var = [expression1] if [condition] else [expression2]
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')
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
# Cigar Party problem in https://codingbat.com/prob/p195669
def cigar_party(cigars, is_weekend):
result = False
result = True if (is_weekend and cigars >= 40) or (cigars >= 40 and cigars <= 60) else False
return result
[what to do when condition=true] if [condition] else [what to do when condition=false]