How to Do Ternary Operator Assignment in Python

See Python: Tips and Tricks for similar articles.

Many programming languages, including Python, have a ternary conditional operator, which is most often used for conditional variable assignment. To illustrate, consider this code:

if game_type == 'home':
    shirt = 'white'
else:
    shirt = 'green'

That’s very clear, but it takes four lines of code to assign a value to game_type.

The syntax for the ternary operator in Python is:

[on_true] if [expression] else [on_false]

Using that syntax, here is how we would rewrite the code above using Python’s ternary operator:

shirt = 'white' if game_type == 'home' else 'green'

It's still pretty clear, but much shorter. Note that the expression could be any type of expression, including a function call, that returns a value that evaluates to True or False.