Yes, it was added in version 2.5. It's frowned upon by some pythonistas, so keep that in mind.
The syntax is:
a if test else b
First test
is evaluated, then either a
or b
is returned based on the Boolean value of test
;
if test
evaluates to True a
is returned, else b
is returned.
For example:
>>> 'true' if True else 'false'
'true'
>>> 'true' if False else 'false'
'false'
Official documentation: