gpt4 book ai didi

python - 如何截断小数类型并保留为小数类型而不四舍五入?

转载 作者:太空狗 更新时间:2023-10-29 20:53:26 24 4
gpt4 key购买 nike

我需要在不舍入的情况下截断小数类型并保留小数类型,以最高效的处理器方式。

我认为数学选项会返回一个 float 。

我相信量化选项会返回一个四舍五入的数字。

Str 选项是处理代价高昂的方式。

是否有一种简单、直接的方法可以将超过指定十进制长度的小数类型的数字简单地删除?

最佳答案

quantize 方法确实有一个 rounding 参数来控制值的舍入方式。 ROUND_DOWN 选项似乎可以满足您的需求:

  • ROUND_DOWN (towards zero)
from decimal import Decimal, ROUND_DOWN

def truncate_decimal(d, places):
"""Truncate Decimal d to the given number of places.

>>> truncate_decimal(Decimal('1.234567'), 4)
Decimal('1.2345')
>>> truncate_decimal(Decimal('-0.999'), 1)
Decimal('-0.9')
"""
return d.quantize(Decimal(10) ** -places, rounding=ROUND_DOWN)

关于python - 如何截断小数类型并保留为小数类型而不四舍五入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41523421/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com