学python书上的课后小题目,想着锻炼一下

要求如下:家电影院根据观众的年龄收取不同的票价:不到3岁的观众免费;3~12岁的观众为10美元;超过12岁的观众为15美元。请编写一个循环,在其中询问用户的年龄,并指出其票价。

想着利用一下学到的break内容等等综合编写一个小程序,结果如下:

message = 'please input your age,We will tell you the ticket price'
message += '\nUnder 3 free, 3 to 12 10 dollers, more than 12 is 15 dollers'
message += "\ninput 'quit' to exit program : "
age = ''
while age != 'quit':
    age = input(message)
    if age == 'quit':
        break
    if int(age) < 3:
        print("you are free")
    elif 3 <= int(age) <=12:
        print("you need pay 10 dollers")
    else:
        print("you need pay for 15 dollers")

历经多次修改,终于能够执行(请不要在意其中内容的语法错误)。

首先使用message变量存储输入提示内容。

指定一个空变量age来储存输入年龄。

使用while语句来循环执行这个输入提示,使得这个程序可以多次运行。

但是不能直接用age来进行年龄的判断,age变量有可能为一个str(字符串)也可能为一个int(整数)类型,所以在比较的时候要把age变量转换为一个int(age)。

当退出程序的时候,需要通过检查用户是否输入了quit来激活break命令,故通过增加一个if命令来打断循环。

初学者写的程序或许有很多不完美的地方,敬请指正。