Фильтр списка (оставить только числовые значения)
Нужно отфильтровать список по такому признаку: элемент списка имеет только цифры в своём составе
пример списка:
ids = ['246817', '246815', '246796', 'yandex_rtb_R-A-332375-1', '246795']
То есть нужно оставить только числовые значения и убрать yandex_rtb_R-A-332375-1.
Ответы (3 шт):
Автор решения: entithat
→ Ссылка
import re
ids = ['246817', '246815', '246796', 'yandex_rtb_R-A-332375-1', '246795']
list(filter(lambda x: re.search('^\d+$', x), ids))
Автор решения: CrazyElf
→ Ссылка
Ну тут filter прямо напрашивается (хотя это и эквивалентно решению Эникейщик-а):
ids = ['246817', '246815', '246796', 'yandex_rtb_R-A-332375-1', '246795']
print(list(filter(str.isdigit, ids)))
Вывод:
['246817', '246815', '246796', '246795']