如何在python中显示未累积的变量?

时间:2018-02-12 19:19:51

标签: python python-3.x variables

我正在进行一项任务,要求我显示菜单,然后提示客户选择玫瑰花型和一定数量的玫瑰花。我有一个累积变量来接受并用于最终的交易计算。但是,当客户选择订购更多玫瑰时,如何让它显示未累积/输入的变量和价格?

elif roseTypeOrdered == 'r' or roseTypeOrdered == 'R':
        numRedRosesOrdered += int(input("How many red roses would you like to order?"))
        totalPrice += numRedRosesOrdered * STEM_RED_ROSE_PRICE
        print("You have selected {amount:.0f} red roses for a price of ${price:.2f}" .format(amount=numRedRosesOrdered, price=totalPrice))
        # Make sure you have a check to see if the input only Y or N
        transactionActive = input("Would you like to order more roses? (Y-yes, N-no)")
        if transactionActive == 'N' or transactionActive == 'n':
            break

按原样,如果我输入R,4,Y(您已经选择了4个红玫瑰,价格为8.00美元),那么R,4,N(您选择了8朵红玫瑰,价格为24.00美元)。红玫瑰每个2.00美元。

1 个答案:

答案 0 :(得分:0)

这是因为每次循环都会将玫瑰numRedRosesOrdered的运行总数添加到totalPrice,这本身已经是一个运行总计。将numRedRosesOrdered更改为:

numRedRosesOrdered = int(input("How many red roses would you like to order?"))

...然后有一个单独的变量,比如你所定义的totalNumRedRoses

totalNumRedRoses += numRedRosesOrdered

这是您在摘要印刷中使用的内容:

print("You have selected {amount:.0f} red roses for a price of ${price:.2f}" .format(amount = totalNumRedRoses , price = totalPrice))