Я думаю, что единственным другим чистым решением было бы условное выражение:
# Concatenate an empty string if "not condition"
output = 'my constant string' + (' blah blah' if condition else '')
Это, по сути, то, что вы имели раньше, просто встроенное. О том, лучше это или нет, можно обсудить.
Вы могли бы сделать это функцией, как вы упомянули, но я не думаю, что это должна быть функция функции для условного вызова кода для вас на основе переданногофлаг (condition
). Я думаю, что вызывающая сторона должна просто обработать condition
себя.