【发布时间】:2014-02-22 08:59:49
【问题描述】:
您好,我是 python 的初学者,我在课堂上遇到了一个问题,希望得到一些指导。 班级的问题是:体育场座位:运动场有三个座位类别。对于棒球比赛,A 级座位每个 15 美元,B 级座位每个 12 美元,C 级座位每个 9 美元。创建一个 python 程序,允许用户输入每个班级的售票数量。该程序应该能够显示每类门票销售产生的收入金额和产生的总收入。 为票数添加输入验证,以便只允许数字。您的程序不得让其余代码在输入无效的情况下运行。
现在我大部分时间都在工作,但由于某种原因,我的收入 2 和 3 并没有乘以价格的门票数量,而只是从价格中写出很多倍的门票数量。似乎只有影响 B 类和 C 类
这是我的代码
sales1=input("Enter number of tickets sold for Class A seats:")
#Validating sale
while not sales1.isnumeric():
print("INVALID INPUT:Please enter a number:")
#Convert sales to a number
sales1 =int(sales1)
sales2=input("Enter number of tickets sold for Class B seats:")
#Validating sale
while not sales2.isnumeric():
print("INVALID INPUT:Please enter a number:")
#Convert sales to a number
sales =int(sales2)
sales3=input("Enter number of tickets sold for Class C seats:")
#Validating sale
while not sales3.isnumeric():
print("INVALID INPUT:Please enter a number:")
#Convert sales to a number
Sales2 =int(sales3)
#Income
income1 = int(sales1 * 15)
print("Sales for Class A:$" , end="")
print(income1)
income2 = int(sales2 * 12)
print("Sales for Class B:$" , end="")
print(income2)
income3 = int(sales3 * 9)
print("Sales for Class C:$" , end="")
print(income3)
#Total
Total = int(income1 + income2 + income3)
print("Total revenue from ticket sales:$")
print (total)
我的结果是这样的
输入 A 类座位的售票数量:1 请输入 B 类座位的售票数量:1 输入 C 类座位的售票数量:1 A类的销售额:15美元。 B 类销售额:$111111111111 C类销售额:$111111111
【问题讨论】:
-
你需要调用
int(sales1) * 15...在python中乘以字符串,但它会重复字符串,这不是你想要的。 -
离题了...但是亲爱的上帝,如果他们没有输入有效的整数会发生什么?!...他们没有重新输入的选项...。它只是保持垃圾邮件无效! (我可能是错的......有一段时间没有处理python......)