我对编程很陌生,无法理解为什么我的elif语句被忽略了。有人可以帮忙吗?
prompt = ("Enter your age to buy a ticket ")
prompt += ("or type 'quit' to end the program:")
while True:
age = raw_input(prompt)
if age == 'quit':
break
elif age < 3:
print "Free ticket."
elif age < 12:
print "$10 ticket."
else:
print"$15 ticket."
答案 0 :(得分:1)
age
是一个字符串。在检查整数之前将其转换为int。
prompt = ("Enter your age to buy a ticket ")
prompt += ("or type 'quit' to end the program:")
while True:
age = raw_input(prompt)
if age == 'quit':
break
elif int(age) < 3:
print "Free ticket."
elif int(age) < 12:
print "$10 ticket."
else:
print "$15 ticket."
答案 1 :(得分:1)
我会告诉你一些基本的调试技巧。
您想知道为什么忽略elif
意味着您想知道未输入elif
块的原因。原因很明显,条件是False
。
因此您只需输出条件即可结帐。 print age < 3
,然后输出False
。