为什么输入整数也不行?还是会报错
temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
# 这种想法是因为 type(1) 会返回 <class 'int'>,如果 type(temp) 返回结果一致说明输入是整数。
while type(temp) != type(1):
print("抱歉,输入不合法,", end='')
temp = input("请输入一个整数:")
输入整数也是报错,不理解,小白求解 因为input()函数返回值是字符串string,不管你输入什么内容,都会将之作为字符串赋给temp,所以你这样写是不对的。
若是你想判断是不是整形数字,可以用isdecimal()函数。这个函数是判断字符串中是不是只包含十进制数字,若包含其他字符,返回值为False。
这段程序应该这样写:temp=input('不妨猜一下小甲鱼现在心里想的是哪个数字:')
while not temp.isdecimal():
print('抱歉,输入不合法,',end='')
temp=input('请输入一个整数')
PS:下次提问请贴代码,而不是上传图片,这样回答者还需要敲一遍程序,很麻烦的。 input返回的始终是str
要判断输入的这个str是不是数字,可以调用str的函数
temp.isdigit()
页:
[1]