【发布时间】:2018-09-21 01:26:41
【问题描述】:
key = int(input("Choose a Christmas Gift from 1 to 5!"))
if type(key) != type(0):
print("Please enter a number.")
exit()
if not (1 <= key <= 5):
print(key,"is an invalid number.")
exit()
if key == 1:
print("1 Partridge in a Pear Tree.")
elif key == 2:
print("2 Turtle Doves.")
elif key == 3:
print("3 French Hens.")
elif key == 4:
print("4 Calling Birds.")
elif key == 5:
print("5 Golden Rings.")
我已经做到了这一点(我对此很陌生,我做了我在课堂上看到的),但是当你输入一个数字时,我不知道如何打印前面的行。
假设我输入了 3。
输出应该是:
3 french hens.
2 turtle doves
1 partridge in a pear tree.
它应该对所有有效数字都这样做。
编辑:我将 eval 更改为 int。
任何建议都有帮助!谢谢。
【问题讨论】:
-
如果你想要整数,请不要
eval(input(...))。那只是要求输入错误以无意中破坏您的代码。int(input(...))将使有效输入工作,并为无效输入引发可预测的ValueErrors,不需要eval。 -
@ShadowRanger 哦,好的,谢谢,我会去解决这个问题!我仍然需要打印其他行的帮助。
-
@ShadowRanger 这更有意义。再次感谢您!
标签: python python-3.x