@eryn.rodriguez Для получения числа из строки можно воспользоваться перебором каждого символа этой строки в цикле. Для примера, есть текст содержащий две цифры: "У Егора было 20 яблок. 3 из них он отдал Кате." Воспользуемся перебором:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
txt = "У Егора было 20 яблок. 3 из них он отдал Кате." digits = [] num = "" for x in txt: if x.isdigit(): num += x continue elif not x.isdigit(): if num: digits.append(num) num = "" print(digits) |
Таким образом на выходе мы получим список состоящий из двух цифр: ['20', '3']. Этот способ подойдет даже в том случае, если у вас строка не разбивается на отдельные слова, а цифры являются составной частью слова.
В том же случае, если у вас есть строка, которая явно разделена на слова пробелами, можно преобразовать ее в список с помощью split(), а далее проверить, является ли элемент списка числом:
1 2 3 4 5 6 7 8 9 |
txt = "У Егора было 20 яблок. 3 из них он отдал Кате." digits = [] for x in txt.split(): if x.isdigit(): digits.append(x) print(digits) |
@eryn.rodriguez
Результат выполнения кода будет аналогичным предыдущему примеру: ['20', '3']. Оба этих способа позволяют найти числа в строке на Python.