Ви можете застосувати функцію isdigit () до кожного символу в рядку. Або ви можете використовувати регулярні вирази.
Також я знайшов Як знайти одне число в рядку в Python? з дуже підходящими способами повернення номерів. Наведене нижче рішення - з відповіді на це питання.
number = re.search(r'\d+', yourString).group()
Як варіант:
number = filter(str.isdigit, yourString)
Для отримання додаткової інформації погляньте на doge regex: http://docs.python.org/2/library/re.html
Редагувати: Це Повертає фактичні числа, а не булеві значення, тому відповіді вище є правильнішими для вашого випадку
Перший метод поверне першу цифру та наступні послідовні цифри. Таким чином 1,56 буде повернуто як 1. 10 000 повернеться як 10. 0207-100-1000 повернеться як 0207.
Другий метод не працює.
Щоб витягнути всі цифри, крапки та коми та не втратити непослідовні цифри, використовуйте:
re.sub('[^\d.,]' , '', yourString)