Страницы

Поиск по вопросам

среда, 26 февраля 2020 г.

Как из строки добавить числа в список

#python #python_3x


Как из строки достать все числа и поместить их в список.
Именно числа, а не отдельные цифры. Например:

pre = input('Введите a, b, c через пробел: ').strip() #67ds55 44dg4 54g
pre2 = ''.join(i + ' ' for i in pre if i.isdigit())
print(pre2) #6 7 5 5 4 4 4 5 4


Необходимо, чтоб pre2 был списком (в моем примере строка), который принимает цифры
не по одному, а по числам, если цифры стоят рядом, например ['67', '55', '44', '4',
'54']. Ну и если возможно сделать это с дробными числами, то только лучше.
    


Ответы

Ответ 1



Можно с помощью регулярных выражений: import re pre = input('Введите a, b, c через пробел: ').strip() #67ds55 44dg4 54g v22.5ger pre2 = re.findall(r'-?\d+\.?\d*', pre) print(pre2) # ['67', '55', '44', '4', '54', '22.5']

Ответ 2



from itertools import groupby pre2 = [''.join(g) for k, g in groupby(pre, key=str.isdigit) if k]

Комментариев нет:

Отправить комментарий