Форум сайта python.su
приветствую
есть последовательность значений вида:
0,1,2….
НО, в ней могут встречаться пустые значения (не null) а именно “ ”, произвольный текст типа “аараапвпр”, null, нужен код отсекающий все кроме чисел…
помогите плиз
Офлайн
ll = ["", 1, 2.0, "abada", 3] result = [] for i in ll: try: val = int(i) result.append(val) except: pass print(result)
Офлайн
спасибо, а как смоделировать входящий список содержащий null?
Офлайн
Никак - питон не содержит в себе данный тип
есть None, False
Офлайн
ок, список с none?
Офлайн
some_lst = [1, 2.0, 'строка', '', None, ['1', '2', '3']] def is_num(num): if isinstance(num, int) or isinstance(num, float): return True sort_lst = [i for i in some_lst if is_num(i)] print(sort_lst) sort_lst_2 = [i for i in some_lst if not is_num(i)] print(sort_lst_2)
[1, 2.0]
['строка', '', None, ['1', '2', '3']]
Process finished with exit code 0
Офлайн
ага, спасибо! но немного избыточно в моей последовательности числа только целые)
Отредактировано pe1601@mail.ru (Ноя. 9, 2022 13:12:13)
Офлайн
Хорошо, спасибо за ответ, у меня тот же вопрос. Я закончил это.
word wipe
Офлайн