简单的Python'For'循环

时间:2014-09-22 19:10:56

标签: python

所以这是我的初学python类。我有一个关于我做错了什么的简单问题。我应该做一个" for循环"要求6个正数的价格。然后我打印出加在一起的6个数字(小计)。然后我找到税额(8.5%)并找到总金额。

简单,对吧?除了我无法弄清楚我在for循环中做错了什么。一切都有效,除了数字不加在一起。我确定我需要这样的东西:

sub_total = sub_total + x

..在for循环的某个地方,我只是不知道如何把它放进去。

这就是我所拥有的。

for x in range (1, 7):
    sub_total = float ( input ( "Please enter the price for your item: "))
    while sub_total < 0:
        sub_total = float ( input ( "That's not positive. Enter a positive price: "))

print ( "Your subtotal is ", sub_total)
tax = sub_total * .085
print ( "Your tax amount is ", tax)
total_sum = tax + sub_total
print ( "Your total is ", total_sum)

非常感谢任何帮助。在这里学习如何做到这一点,而不是试图让别人为我做功课。

1 个答案:

答案 0 :(得分:1)

存储输入的值,不要在每个循环中覆盖它们。使用raw_input代替input(除非使用Python 3)。如果它不是有效值,则使用try...except进行环绕调用浮动。

subs = []

for _ in range(7):
    sub = 0

    while sub <= 0:
        try:
            sub = float(raw_input('item price: '))
        except ValueError:
            continue

    subs.append(sub)

sub_total = sum(subs)
tax = sub_total * 0.85
total = sub_total + tax