Python: как не добавлять элемент, неудовлетворяющий условию при генерации списка?
Есть такой список, нужно получить на выходе список, содержащий только те строки, которые представляют собой числа
elements = ['1', 'sdf2', '3', '32', '2sf']
Как при генерации списка в ветке else не добавлять элемент вообще?
Так нельзя - нет ветки else
result = [element if element.isdigit() for element in elements]
А так приходится добавлять либо '', либо None или еще что-то. Как не добавлять элемент?
result = [element if element.isdigit() else '' for element in elements]
Ответы (1 шт):
Автор решения: inquirer
→ Ссылка
elements = ['1', 'sdf2', '3', '32', '2sf']
m = [i for i in elements if i.isdigit()]
print(m)
Если только все числа целые, не дробные. Если с дробными нужно напишите.