为什么在Python中没有++and--运算符?
++
--
不是因为它没有道理;而是因为它没有意义。最好将“ x ++”定义为“ x + = 1,求出x的先前绑定”。
如果您想知道最初的原因,则必须浏览旧的Python邮件列表,或者询问那里的某个人(例如Guido),但是在事实成立之后就很容易找到理由了:
与其他语言一样,不需要简单的增量和减量。您不会for(int i = 0; i < 10; ++i)经常用Python编写东西。相反,你做类似的事情for i in range(0, 10)。
for(int i = 0; i < 10; ++i)
for i in range(0, 10)
由于几乎不需要它,因此没有太多理由为其提供自己的特殊语法。当您确实需要增加时,+=通常就可以了。
+=
这不是是否有意义,还是可以做到的决定。这是一个好处,是否值得增加该语言的核心语法的问题。请记住,这是 四个 运算符- postinc,postdec,preinc,predec,并且每个运算符都需要具有自己的类重载;他们都需要指定和测试;它将在语言中添加操作码(这意味着更大,因此更慢的VM引擎);每个支持逻辑增量的类都需要实现它们(在+=和之上-=)。
-=
+=和都是多余的-=,因此将成为净亏损。