一般来说,一元代码+在Python中应该做什么?
+
我问是因为到目前为止,我从未见过这样的情况:
+obj != obj
obj通用对象在哪里实现__pos__()。
obj
__pos__()
所以我想知道:为什么+和__pos__()存在吗?您能否提供上面表达式计算结果为的真实示例True?
True
这是该decimal包中的“真实世界”示例:
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')