Обновление до более новой версии Python будет лучшим решением, но если по какой-то причине вы не можете обновить, вы можете обновить код, чтобы использовать и / или трюк .
Итак, это:
>>> 'a' if 1 == 2 else 'b'
'b'
становится:
>>> (1 == 2) and 'a' or 'b'
'b'
Здесь есть небольшая проблема в том, что если значение, которое вы возвращаете для самого True, оценивается как False, то это утверждение не будет работать так, как вы хотите. Вы можете обойти это следующим образом:
>>> ((1 == 2) and ['a'] or ['b'])[0]
'b'
В этом случае, поскольку значение является непустым списком, оно никогда не будет оценено как False, поэтому трюк всегда будет работать.