question
temp = input('请输入一个年份:')while not temp.isdigit():
temp = input("抱歉,您的输入有误,请输入一个整数:")
num = int(temp)
if num>90:
print('你的考试等级为A')
if 90>= num > 80:
print('你的考试等级为B')
if 80>= num > 60:
print('你的考试等级为C')
if 60>= num >= 0:
print('你的考试等级为D')
#
temp = input('请输入你的考试成绩:')
while type(temp) != type(1):
print('抱歉,输入不合法,',end='')
temp = input('请输入一个整数:')
num = int(temp)
if num>90:
print('你的考试等级为A')
if 90>= num > 80:
print('你的考试等级为B')
if 80>= num > 60:
print('你的考试等级为C')
if 60>= num >= 0:
print('你的考试等级为D')
#为什么第一个可以运行,第二个却不能正常运行
因为input默认返回的时字符型变量
type(temp) != type(1)
所以这个条件永远成立,导致一直让你输入 type(temp) != type(1)永远成立
input()输入的是str类型 temp需要转换类型
temp = int(input('请输入你的考试成绩:')) baige 发表于 2020-9-9 17:55
type(temp) != type(1)永远成立
input()输入的是str类型
num = int(input('请输入你的考试成绩:'))
while type(num) != type(1):
print('抱歉,输入不合法,',end='')
num = int(input('请输入一个整数:'))
if num>90:
print('你的考试等级为A')
if 90>= num > 80:
print('你的考试等级为B')
if 80>= num > 60:
print('你的考试等级为C')
if 60>= num >= 0:
print('你的考试等级为D')
#改完之后,为什么第一次输入除数字以外的类型还不能正常运行 1q23w31 发表于 2020-9-9 17:54
因为input默认返回的时字符型变量
所以这个条件永远成立,导致一直让你输入
num = int(input('请输入你的考试成绩:'))
while type(num) != type(1):
print('抱歉,输入不合法,',end='')
num = int(input('请输入一个整数:'))
if num>90:
print('你的考试等级为A')
if 90>= num > 80:
print('你的考试等级为B')
if 80>= num > 60:
print('你的考试等级为C')
if 60>= num >= 0:
print('你的考试等级为D')
#改完之后,为什么第一次输入除数字以外的类型还不能正常运行 3216207773 发表于 2020-9-9 19:13
num = int(input('请输入你的考试成绩:'))
while type(num) != type(1):
print('抱歉,输入不合法 ...
因为int只能对纯数字(不包括小数)进行取整,例如像".“的字符 int无法取整,会抛出一个异常,使程序无法继续运行 1q23w31 发表于 2020-9-9 20:10
因为int只能对纯数字(不包括小数)进行取整,例如像".“的字符 int无法取整,会抛出一个异常,使程序无法 ...
如何进行修改
3216207773 发表于 2020-9-9 20:34
如何进行修改
按照你这个思路无法对其修改,建议第一种做法 1q23w31 发表于 2020-9-9 21:04
按照你这个思路无法对其修改,建议第一种做法
好的,蟹蟹啦
页:
[1]