Does Python Have a Ternary Conditional Operator?

James W.

The Problem

You know that some programming languages make use of a ternary operator to shorten if-else code blocks, but does Python support this kind of syntax? If so, what is the structure of a Python ternary operator?

The Solution

The ternary operator is used to shorten the code needed to write if-else blocks.

The syntax of ternary operators naturally differs between languages, but in most cases, the operator handles three arguments: the comparison, the result if true, and the result if false.

A normal if-else block takes at least four lines of code. For example,

if x > y:
  z = x
else:
  z = y

The ternary operator lets you shorten an if-else block into a single line of code.

The Python Ternary Operator

The Python ternary operator follows this syntax:

x if condition else y

The operator checks a condition, and returns x if the condition is true or y if it’s not.

Here is an example of a ternary operator use case:

x = 10
y = 5

z = x if x > y else y

print("z = " + str(z))

Output:

z = 10

The ternary operator above checks if x is greater than y, and if it is, assigns the value of x (10) to the variable z.

Further reading

If you’re looking for information on Python application monitoring, check out these links from our blog:

Join the discussionCome work with us
Share on Twitter
Bookmark this page
Ask a questionImprove this Answer

Related Answers

A better experience for your users. An easier life for your developers.

Try Sentry For FreeRequest a Demo
    TwitterGitHubDribbbleLinkedin
© 2022 • Sentry is a registered Trademark
of Functional Software, Inc.