gpt4 book ai didi

python - 为什么 Python 将加法运算符的连续重复视为单次重复?

转载 作者:行者123 更新时间:2023-12-04 03:59:58 25 4
gpt4 key购买 nike

今天我注意到 Python 解释器将加法运算符的连续重复视为运算符的一次重复。例如:

>>> 1 ++ 2
3

发生此类事件时不简单地引发错误有什么用?我发现一个打字的程序员更可信

>>> 1 -+-++ 2

只是他们的想法;这不太可能有意出现在代码中。

好像没什么用,写个类似的东西

>>> +-1

简单地返回-1,表明该操作并没有使数字为正数,而是简单地执行恒等操作。

最佳答案

因为它重载了。它是加法运算符(由 __add__ 方法实现),也是 unary正运算符(由 __pos__ 实现)。将其与 - 进行比较,后者是减法运算符 (__sub__) 和一元负运算符 (__neg__)。

因此,例如,1++ 2 被解析为 1 + (+ 2),对于整数,它简化为 1 + 2 ,但不一定适用于其他类型。参见 What's the purpose of the + (pos) unary operator in Python?

关于python - 为什么 Python 将加法运算符的连续重复视为单次重复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63239762/

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