python重载运算符之左add右add(radd)
x 和 +x 何时不相等 每个人都觉得 x == +x, 而且在 Python 中, 几乎所有情况下都是 这样。 但是, 我在标准库中找到两例 x != +x 的情况。 第一例与 decimal.Decimal 类有关。 如果 x 是 Decimal 实例, 在 算术运算的上下文中创建, 然后在不同的上下文中计算 +x, 那么 x != +x。 例如, x 所在的上下文使用某个精度, 而计算 +x 时, 精度 变了, 如示例 13-2 所示。
>>> import decimal
>>> ctx = decimal.getcontext() ➊
>>> ctx.prec = 40 ➋
>>> one_third = decimal.Decimal('1') / decimal.Decimal('3') ➌
>>> one_third ➍
Decimal('0.3333333333333333333333333333333333333333')
>>> one_third == +one_third ➎
True
>>> ctx.prec = 28 ➏
>>> one_third == +one_third ➐
False
>>> +one_third ➑
Decimal('0.3333333333333333333333333333')
重载+运算符
@作为中缀运算符 点积