小编典典

Python中+(pos)一元运算符的目的是什么?

python

一般来说,一元代码+在Python中应该做什么?

我问是因为到目前为止,我从未见过这样的情况:

+obj != obj

obj通用对象在哪里实现__pos__()

所以我想知道:为什么+__pos__()存在吗?您能否提供上面表达式计算结果为的真实示例True


阅读 303

收藏
2020-12-20

共1个答案

小编典典

这是该decimal包中的“真实世界”示例:

>>> from decimal import Decimal
>>> obj = Decimal('3.1415926535897932384626433832795028841971')
>>> +obj != obj  # The __pos__ function rounds back to normal precision
True
>>> obj
Decimal('3.1415926535897932384626433832795028841971')
>>> +obj
Decimal('3.141592653589793238462643383')
2020-12-20