Conditional operator in Python? [duplicate]

value = b if a > 10 else c

For Python 2.4 and lower you would have to do something like the following, although the semantics isn’t identical as the short circuiting effect is lost:

value = [c, b][a > 10]

There’s also another hack using ‘and … or’ but it’s best to not use it as it has an undesirable behaviour in some situations that can lead to a hard to find bug. I won’t even write the hack here as I think it’s best not to use it, but you can read about it on Wikipedia if you want.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)