python的while循环问题

img

img

代码组2是由代码组1复制粘贴,并将age替换成input(prompt)得来
为什么代码组2没有打印age=1、34时的票价呢

代码组2的代码如下

#询问年龄,给出票价,quit退出
prompt = "How old are you?"

acitve = True
while active:
    if input(prompt) == "quit":
        break
    else:
        if int(input(prompt)) < 3:
            price = 0
        elif int(input(prompt)) < 16:
            price = 10
        else:
            price = 20
        print("The price is ", price)

初学python的菜鸡求问

你这个相当写了三个输入,如果一开始没有输入quit的话就会继续执行else里面的两个输入,后面的输入会覆盖前面得到的price结果。然后最后还是只有一个price的值会被输出。

把input(prompt)赋值给一个变量,然后用变量进行判断,判断用相当于再次要接收一个输入值。

代码2第二个和第三个how是if条件里面进行的input并没有进行下一循环