Одна строка, если-условие-присваивание - PullRequest
97 голосов
/ 24 октября 2011

У меня есть следующий код

num1 = 10
someBoolValue = True

Мне нужно установить значение num1 на 20, если someBoolValue равно True;и ничего не делать иначе.Итак, вот мой код для этого

num1 = 20 if someBoolValue else num1

Можно ли как-нибудь избежать части ...else num1, чтобы она выглядела чище?Эквивалент

if someBoolValue:
    num1 = 20

Я попытался заменить его на ...else pass следующим образом: num1=20 if someBoolValue else pass.Все, что я получил, было синтаксической ошибкой.Также я не мог просто пропустить ...else num1 часть.

Ответы [ 11 ]

0 голосов
/ 21 июня 2018

Вы можете определенно использовать num1 = (20, если someBoolValue иначе num1), если хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...