打印出只有两个小数点的总数时出现问题 [Python 2.7]

Having issues printing out totals with only two decimal points [Python 2.7]

尽管小数格式是正确的,但我的计算现在似乎显示不正确。

import time # It was reccommend in our text to always have your import data located outside of any loops, thus I put mine here.

while True: # This is the main, and only; while loop.  It will repeat the program and allow users to book more reservations depending on input.
    user_people = int(raw_input("Welcome to Ramirez Airlines!  How many people will be flying?"))
    user_seating = str(raw_input("Perfect!  Now what type of seating would your party prefer? We offer Economy, Business and First Class!"))
    
    else:
        before_discount = luggage_total + seats_total
        discount_amount = before_discount * discount_rate
        after_discount = before_discount - discount_amount

        print ('Unfortunately we were not able to discount this particular transaction, however you can learn how to save 10% on future flights through our Frequent Flyers program! Contact us for more info!')
        print ('The total tax amount for your order is: $%.2f') % (before_discount * tax_rate)
        print ('Your total amount due including taxes for your airfare is: $%.2f') % (before_discount * tax_rate + before_discount)

    
    user_continue = raw_input("Your reservation was submitted successfully.  Would you like to do another?")    
    if user_continue != 'yes':
        break

print('Thank you for flying with Ramirez Airlines!')   

print 'Your total amount due is ${:.2f}'.format(totalCost)

并且:

print 'Your total amount due is $%.2f' % totalCost 

两者都打印到小数点后两位。

In [3]: 'Your total amount due is $%.2f' % 1.2234
Out[3]: 'Your total amount due is .22'



In [4]: 'Your total amount due is ${:.2f}'.format(1.2234)
Out[4]: 'Your total amount due is .22'

如果您要将两个数字相加,您需要括号以进行旧样式格式设置:

In [6]: 'Your total amount due is $%.2f' % (1.2234 + 1.2324)
Out[6]: 'Your total amount due is .46'
In [7]: 'Your total amount due is ${:.2f}'.format(1.2234+   1.2324)
Out[8]: 'Your total amount due is .46'

使用您的代码中的示例:

print ('Your total amount due including taxes for your airfare is: ${:.2f}'.format(tax_amount + after_tax )
total_cost = 1234.56789
print('Your total amount due is ${0:.2f}'.format(total_cost))

Your total amount due is 34.57
print ('text'),("%.2f" % variable)

应该做