学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命令来打断循环。
初学者写的程序或许有很多不完美的地方,敬请指正。