python格式化输出保留2位小数

我是小白就不用多说了,学习python做了个练习题,结果运行了一遍,发现输入金额后得到的有很多位小数,

虽然不知道为什么,但是看得很不舒服,

就想到应该把让小数点后只保留2位数

找到了方法:将{0}改为{:.2f}

 

 

# 一家商场在降价促销。如果购买金额50-100元(包含50元和100元)之间,
# 会给10%的折扣,如果购买金额大于100元会给20%折扣。编写一程序,
# 询问购买价格,再显示出折扣(%10或20%)和最终价格
sum_money = float(input('请输入购买总金额:'))
if sum_money < 50:
print('没有折扣,请支付{:.2f}元'.format(sum_money))
elif 50 <= sum_money <= 100:
print('有10%的折扣,请支付{:.2f}元'.format(sum_money * (1-0.1)))
else:
print('有20%的折扣,请支付{:.2f}元'.format(sum_money * (1-0.2)))

 因为这里用%f对后面算式会报错

#方法1:
print("%.2f" % 0.13333)

#方法2
print("{:.2f}".format(0.13333))

#方法3
round(0.13333, 2)

 

posted @ 2018-11-16 17:41  红红乐园  阅读(112344)  评论(0编辑  收藏  举报