如何提示用户输入并且只允许数字响应(在Python 2.7中)



我在Python 2.7中工作。我想提示用户输入,并将输入作为数字进行分析。如果用户输入的不是数字,我希望程序再次提示用户,而不是崩溃。例如,我在想(在psuedocode中(:

g=input("Enter a number: ")
while g is not a number:
g=input("That isn't a number. Try again:")
print g**2

有什么想法吗?

试试这个:

def is_integer(n):
try:
int(n)
return True
except ValueError:
return False
g=raw_input("Enter a number: ")
while not is_integer(g):
g=raw_input("That isn't a number. Try again:")
g = int(g)
print g**2
def get_number():
try:
a = raw_input('Please enter number: ')
return float(a)
except ValueError:
print('Please enter a valid number')
return get_number()
print(get_number())
Please enter number: asfa
Please enter a valid number
Please enter number: asdfasdf
Please enter a valid number
Please enter number: 123.213
123.213

最新更新