Python 的四舍五入主要有两种方式;
先说结论:
如果是对金额的四舍五入,不建议使用内置函数,原因如下:
python3中的round函数对浮点数进行四舍五入的规则:
如果保留位数的后一位等于 5,且该位数后面没有数字,则不进位 如果保留位数的最后一位等于 5,且该位数后面有数字,则进位 如果保留位数的最后一位大于等于 6 ,则进位
使用Decimal,必须先把小数转换成字符串,这样才可以精确的表示浮点数;
def round2():
import decimal
# 修改舍入方式为四舍五入
decimal.getcontext().rounding = "ROUND_HALF_UP"
x = "0.525"
x1 = decimal.Decimal(x).quantize(decimal.Decimal("0.00"))
print(f"{x} 的四舍五入为 {x1}")
y = "5.5"
y1 = decimal.Decimal(y).quantize(decimal.Decimal("0"))
print(f"{y} 的四舍五入为 {y1}")
round2()
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。