When first learning python (Shaw's The Hard Way maybe), it suggested this idiom as python's ternary operator:
boolean and true_branch or false_branch
and explained that boolean=true would make it check and return true_branch, while false makes it check the other side of the or.This is parallel to the standard C one. I'm surprised no one has mentioned it, but I guess that makes sense because it's not very explicit about what it's doing, which goes agains the spirit of python. Probably not very common for python programmers to use.
I'd like to bring up that while it's a matter of opinion the older ugly ?: syntax is much less readable even when you memorize it. I never use ?: syntax ternary expressions in languages that have them because I always have to look it up. That's why a number of languages prefer python-like versions or forms which emphasize to an even larger degree the fact that its just an if-else as an expression to an even larger degree(so I'd question that it's standard, I'm not 100% it's older either as I think the LISP version is closer to the python version).
CoffeeScript
Smalltalk Ruby has both versionsScala a = if (n == 12) "twelve" else "not twelve"
Rust
Haskell (some examples taken from http://rosettacode.org)