краткая форма для объединения строк, обусловленная некоторым условием в python - PullRequest
0 голосов
/ 02 ноября 2019

Много раз я нахожу себя пишущим код в следующей форме:

conditional_str = ''
if condition:
    conditional_str = ' blah blah'

output = 'my constant string' + conditional_str

Я нахожу это немного громоздким и ищу краткий способ сделать это. Один из способов - поместить этот фрагмент кода в функцию.

output = conditional_str_concat(const_str, condition, conditional_str )

Но мне было интересно, есть ли лучший способ сделать это с помощью Python?

1 Ответ

3 голосов
/ 02 ноября 2019

Я думаю, что единственным другим чистым решением было бы условное выражение:

# Concatenate an empty string if "not condition"
output = 'my constant string' + (' blah blah' if condition else '')

Это, по сути, то, что вы имели раньше, просто встроенное. О том, лучше это или нет, можно обсудить.

Вы могли бы сделать это функцией, как вы упомянули, но я не думаю, что это должна быть функция функции для условного вызова кода для вас на основе переданногофлаг (condition). Я думаю, что вызывающая сторона должна просто обработать condition себя.

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