Мне нужно создать кортеж (или массив) с переменным количеством элементов. Учитывая этот минимальный пример:
Код: Выделить всё
def do_something(foo: str):
my_tuple = (
"item",
*([foo] if foo is not None else []),
"something"
)
...
Интересно, есть ли здесь более короткий вариант, чем использование выражения оператора распространения *([foo] if foo не None else []), чтобы добавить элемент в кортеж? Обратите внимание, что использование оператора if не позволяет создавать разные кортежи. Добавление элемента None также не является вариантом. Временем выполнения также можно пренебречь, предпочтение отдается минимизации кода и избыточности.
Подробнее здесь:
https://stackoverflow.com/questions/791 ... thon-tuple