Python Ternary Operator

Created with Sketch.

Python Ternary Operator

 

Summary: in this tutorial, you’ll learn about the Python ternary operator and how to use it to make your code more concise.

Introduction to Python Ternary Operator

The following program prompts you for your age and determines the ticket price based on it:

age = input('Enter your age:')

if int(age) >= 18:
ticket_price = 20
else:
ticket_price = 5

print(f"The ticket price is {ticket_price}")

Code language: Python (python)

Here is the the output when you enter 18:

Enter your age:18
The ticket price is $20

Code language: Python (python)

In this example, the following if...else statement assigns 20 to the ticket_price if the age is greater than or equal to 18. Otherwise, it assigns the ticket_price 5:

if int(age) >= 18:
ticket_price = 20
else:
ticket_price = 5

Code language: Python (python)

To make it more concise, you can use an alternative syntax like this:

ticket_price = 20 if int(age) >= 18 else 5

Code language: Python (python)

In this statement, the left side of the assignment operator (=) is the variable ticket_price.

The expression on the right side returns 20 if the age is greater than or equal to 18 or 5 otherwise.

The following syntax is called a ternary operator in Python:

value_if_true if condition else value_if_false

Code language: Python (python)

The ternary operator evaluates the condition. If the result is True, it returns the value_if_true. Otherwise, it returns the value_if_false.

The ternary operator is equivalent to the following if...else statement:

if condition:
value_if_true
else:
value_if_true

Code language: Python (python)

Note that you have been programming languages such as C# or Java, you’re familiar with the following ternary operator syntax:

condition ? value_if_true : value_if_false

Code language: Python (python)

However, Python doesn’t support this ternary operator syntax.

The following program uses the ternary operator instead of the if statement:

age = input('Enter your age:')

ticket_price = 20 if int(age) >= 18 else 5

print(f"The ticket price is {ticket_price}")

Code language: Python (python)

Summary

  • The Python ternary operator is value_if_true if condition else value_if_false.
  • Use the ternary operator to make your code more concise.

Leave a Reply

Your email address will not be published.