如何以正确的顺序获取这些Python语句?
代码如下:如何以正确的顺序获取这些Python语句?,python,python-3.x,Python,Python 3.x,代码如下: age = input("How Old Are You?") gender = str(input("What is your gender (Please no caps)")) if isinstance(age,int): age = int(age) else: print("Enter a valid age") age = int(age) if gender == "male&
age = input("How Old Are You?")
gender = str(input("What is your gender (Please no caps)"))
if isinstance(age,int):
age = int(age)
else:
print("Enter a valid age")
age = int(age)
if gender == "male":
if age < 30:
print("Watch Captain America")
elif age > 30:
print("Watch Johnny English")
else:
print("Watch Iron Man")
elif gender == "female":
if age < 30:
print("Watch Frozen")
elif age > 30:
print("Watch Cinderella")
else:
print("Watch Fox and the Hound")
else:
print("Enter a Valid Gender")
此块不必要且容易混淆:
if isinstance(age,int):
age = int(age)
else:
print("Enter a valid age")
在您收到age
时,它将始终是一个字符串,因此它将始终打印“输入有效年龄”
您要做的是在获得输入时转换为int
。您还可以删除其他输入上的冗余强制转换为str
,因为它们默认为string
age = int(input("How Old Are You?"))
gender = input("What is your gender (Please no caps)")
否则,据我所知,您的程序运行正常(尽管有“错误”消息)。错误是什么?抱歉,psuedo代码来自学校,因此我无法更改输出,否则我会被叫喊,我对无上限提示中的友好请求感到很高兴,这真的是你们学校伪代码的一部分吗?因为你们学校的性别歧视和明显的威胁,如果你们改变输出,他们会对你们大喊大叫。在编辑之后,我想,这就是您想要的。@vaultah:这不是Python 2。@vaultah我认为OP的“这在Python 2中不起作用”只是为了帮助任何试图在Python 2中提供帮助的人,而不是希望它在Python 2中起作用:P@Makoto当前位置当时我似乎误解了这个问题。谢谢你这么耐心。
age = int(input("How Old Are You?"))
gender = input("What is your gender (Please no caps)")