gpt4 book ai didi

python - 在 iPython 中打印值

转载 作者:太空宇宙 更新时间:2023-11-03 15:51:24 24 4
gpt4 key购买 nike

我定义了一个包含属性的类和一个打印函数,该函数将类的属性打印到控制台。如果我调用打印函数,例如:object.printing_function(),则会打印所需的值,例如0.24

但是,当我从没有类的情况下访问属性时,例如:object.attribute,返回的值为0.23999999999999。

Print(object.attribute) 也给出 0.24,如何更改 object.attribute 以返回 0.24?

我正在使用:Spyder( python )Python 3.5

最佳答案

您可以使用Decimal类来精确表示十进制数:

>>> import decimal
>>> print('{:.20f}'.format(0.24))
0.23999999999999999112
>>> print('{:.20f}'.format(decimal.Decimal('0.24')))
0.24000000000000000000

正如评论所指出的,0.24 作为 float 不能用二进制精确表示,就像 1/3 不能用十进制精确表示一样。

关于python - 在 iPython 中打印值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41265233/

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