Python如何规定对方输入的数字必须是整数?
1、可以使用字符串str的isdigit方法判断字符串是否是一个仅有数字组成,也就是整数。如果是整数退出while循环,否则继续请求输入。
while True:
x = input('Input an integer: ')
if x.isdigit():
break
else:
print 'Please input an *integer*'
2、也可以使用try-except语句。如果输入的字符串是整数,那么它可以用用int()函数,转换为int类并退出循环,否则会出现ValueError,可以使用try-except语句捕获ValueError,然后继续请求输入。
while True:
try:
x = input('Input an integer: ')
x = int(x)
break
except ValueError:
print 'Please input an *integer*'
扩展资料
Python 函数
函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
函数内容以冒号起始,并且缩进。
return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
可以使用字符串str的isdigit方法判断字符串是否是一个仅有数字组成,也就是整数。如果是整数退出while循环,否则继续请求输入。
while True:
x = raw_input('Input an integer: ')
if x.isdigit():
break
else:
print 'Please input an *integer*'
也可以使用try-except语句。如果输入的字符串是整数,那么它可以用用int()函数,转换为int类并退出循环,否则会出现ValueError,可以使用try-except语句捕获ValueError,然后继续请求输入。
while True:
try:
x = raw_input('Input an integer: ')
x = int(x)
break
except ValueError:
print 'Please input an *integer*'
try:
int_input=int(str_input)
except TypeError:
raise Exception,'Please input a int number'
else:
......
那假如允许对方重新输入呢
将raise Exception,'Please input a int number'改为continue