Understanding The Ternary Operator In Python

# x if condition else y

Liu Zuo Lin
Geek Culture

--

What the ternary operator is

score = 60

if score > 50:
grade = 'pass'
else:
grade = 'fail'

^ this is a simple if-else block

score = 60

grade = 'pass' if score>50 else 'fail'

# if score>50, grade = 'pass'
# else, grade = 'fail'

^ doing the exact same thing, but using a ternary operator.

The ternary operator allows us to condense an if-else block into one line.

More Simple Examples

fruit = 'apple'

# simple if-else block
if fruit == 'apple':
drink = 'apple juice'
else:
drink = 'unknown'

# using ternary operator
drink = 'apple juice' if fruit=='apple' else 'unknown'
score = 91
conduct = 'excellent'

# simple if-else block
if score > 90 and conduct == 'excellent':
grade = 'A*'
else:
grade = 'meh'

# using ternary operator
grade = 'A*' if score>90 and conduct=='excellent' else 'meh'

Ternary Operator But With Multiple Conditions

score = 57

if score > 90:
grade = 'distinction'
elif score > 50:
grade = 'pass'
else:
grade = 'fail'

--

--