首页 > 解决方案 > Python:打印小数点后两位的浮点数

问题描述

编写一个程序,询问用户某件商品的价格,然后打印出该商品的账单。账单包括商品价格、商品的销售税以及客户支付的总金额。销售税为商品价格的 5%。总账单是商品的价格加上销售税。

如果该商品售价 99 美元,该账单将如下所示:

价格 $ 99.00 销售税 4.95 总计 $ 103.95

这是我到目前为止所拥有的:

price = float(input("Price $"))
tax = .05
salestax = (price*tax)
total = ((price*tax)+ price)
print("Sales tax  ", salestax)
print("Total $", total)

有人可以帮助我使打印的值有两位小数吗?

现在这是我的输出:

Price $99
Sales tax   4.95
Total $ 103.95

显然,间距是错误的,并不是所有的美元金额都有 2 位小数

标签: python

解决方案


您可以使用print(f'{total:.2f})在浮点数之后打印前 2 个数字。或者,如果您愿意,您可以更改句子中“.2f”的数字数量。

或者,您可以使用该round()功能。试试这个:round(total, 2)数字 2 代表点后会出现多少个数字。


推荐阅读