Ответ 1
Кортежи в Python неизменяемы. Это означает, что как только вы создали кортеж, вы не сможете изменить элементы, содержащиеся в нем. Однако вы можете создать новый кортеж, который не содержит элементы, которые вы не хотите. Например:
>>> a = [('650', '724', '6354', '', '', ''), ('', '', '', '650', '723', '4539')]
>>> [tuple(y for y in x if y) for x in a]
[('650', '724', '6354'), ('650', '723', '4539')]
Это использует понимание списка [... for x in a]
для создания нового списка с использованием формулы в ...
. Это использует выражение-генератор y for y in x if y
для создания нового кортежа, содержащего элементы x
, только если y
является истинным (это означает, что значение является правдивым или строка не имеет значения).