电影票
小白练习题求助:有家电影院根据观众的年龄收取不同的票价:不到3岁的观众免费;3~12岁的观众收费10美元;超过12岁的观众收费15美元。请编写一个循环,在其中询问用户的年龄,并指出其票价。以下是我的代码,麻烦请指正下我哪里出了问题?
sign_w = True
ticket_price = "None"
age = int(input("please enter your age:"))
while sign_w:
if age > 12:
ticket_price == 15
elif age > 0 and age < 3:
ticket_price == 0
elif age >= 3 and age <= 12:
ticket_price == 10
else:
sign_w = False
print(f"you need to pay:{ticket_price}yuan")
{:10_254:}{:10_254:}{:10_254:} 是要输入一些年龄 然后算总金额吗?、 本帖最后由 isdkz 于 2022-2-24 17:30 编辑
因为你的死循环里没有阻塞,只要前面的条件满足,就不会执行else里面的语句,所以就死循环了,
而且应该用的的赋值号 = ,而不是条件判断符号 ==
sign_w = True
while sign_w:
age = int(input("please enter your age:")) # 把 input 放在循环里面
if age > 12:
ticket_price = 15 # 这里用 =
elif age > 0 and age < 3:
ticket_price = 0 # 这里用 =
elif age >= 3 and age <= 12:
ticket_price = 10 # 这里用 =
print(f"you need to pay:{ticket_price}yuan") 我只改了一点点,问题有
1、赋值是 = ,不是 ==
2、你要把input写到循环中
还可以改进的地方
添加中止条件,以及一些细节,你可以先想想不会再来问
sign_w = True
ticket_price = "None"
while sign_w:
age = int(input("please enter your age:"))
if age > 12:
ticket_price = 15
elif age > 0 and age < 3:
ticket_price = 0
elif age >= 3 and age <= 12:
ticket_price = 10
else:
sign_w = False
print(f"you need to pay:{ticket_price}yuan")
大马强 发表于 2022-2-24 17:20
我只改了一点点,问题有
1、赋值是 = ,不是 ==
2、你要把input写到循环中
{:5_109:}{:5_109:}说来也奇怪,我之前也是这样写过一遍,但是没反应。不知道是不是,我哪细节没注意到。加个联系方式呗。以后多多指教! 大马强 发表于 2022-2-24 17:20
我只改了一点点,问题有
1、赋值是 = ,不是 ==
2、你要把input写到循环中
求加好友,新鱼友,积分羞涩。只能求您加一下我,望以后赐教! 阿育王 发表于 2022-2-24 20:39
求加好友,新鱼友,积分羞涩。只能求您加一下我,望以后赐教!
{:10_297:}okok {:5_95:} 大马强 发表于 2022-2-24 17:20
我只改了一点点,问题有
1、赋值是 = ,不是 ==
2、你要把input写到循环中
我才发现积分少了,连回复好友请求都不得行。{:5_104:},要不我说我的微信号哇,同样求加。不会过多打扰,只会求教学习问题。当然您愿意跟我聊聊琐碎,我也愿意倾听!!
我的微信号:553915465
{:5_110:}{:5_110:}
页:
[1]