2015-04-13 3 views

ответ

2

Использование string.isdigit().

str.isdigit()

Возвращение верно, если все символы в строке являются цифры, и есть по крайней мере один символ, иначе ложь.

Для 8-битных строк этот метод зависит от локали.

>>> '-23'.isdigit() 
False 
>>> '23'.isdigit() 
True 
>>> '23.45'.isdigit() 
False 

Так было бы, как,

>>> while True: 
     s = input('How old are you: ') 
     if s.isdigit(): 
      break 


How old are you: y 
How old are you: -7 
How old are you: 8.9 
How old are you: 8 
>>> 
+0

И если пользователь вводит +42? – cdarke

+0

он не рассмотрит ... –