我设置了这个程序,检查100中的标记进行测试。如果用户输入少于60,则应该说失败,如果超过59,则传递。
mark = int(input("Please enter the exam mark out of 100 "))
if mark < 60:
print("\nFail")
elif mark < 101:
print("\nPass")
else:
print("\nThe mark is out of range")
如果用户没有输入整数,如何让程序没有错误。
请帮助,有14岁儿童可以理解的快速解决方案吗?
答案 0 :(得分:4)
try:
mark = int(input("Please enter the exam mark out of 100 "))
except ValueError:
print("\nPlease only use integers")
答案 1 :(得分:4)
将输入保存在变量中并单独转换为整数:
import sys
i = input("Please enter the exam mark out of 100 ")
try:
mark = int(i)
except ValueError:
print('\nYou did not enter a valid integer')
sys.exit(0)
if mark < 60:
print("\nFail")
elif mark < 101:
print("\nPass")
else:
print("\nThe mark is out of range")
如果失败(即,您得到ValueError
),则打印一条消息并退出。您可以解释(对于一个14岁的孩子)int()
需要一个有效的整数作为输入,否则它将引发ValueError
。这是有道理的,因为只有包含整数的字符串才能被int()
转换。