为什么Python中没有++和-运算符?

狮子座:

为什么在Python中没有++and --运算符?

格伦·梅纳德(Glenn Maynard):

不是因为它没有道理;而是因为它没有意义。最好将“ x ++”定义为“ x + = 1,求出x的先前绑定”。

如果您想知道最初的原因,则必须要么浏览旧的Python邮件列表,要么询问那里的某个人(例如Guido),但是在事实成立之后就很容易找到理由了:

与其他语言一样,不需要简单的增量和减量。您不会for(int i = 0; i < 10; ++i)经常用Python 编写东西相反,你做类似的事情for i in range(0, 10)

由于几乎不需要它,因此没有太多理由为其提供自己的特殊语法。当您确实需要增加时,+=通常就可以了。

这不是是否有意义,还是可以做到的决定。这是一个好处,是否值得增加该语言的核心语法的问题。请记住,这是四个运算符-postinc,postdec,preinc,predec,并且每个运算符都需要具有自己的类重载;他们都需要指定和测试;它将在语言中添加操作码(这意味着更大,因此更慢的VM引擎);每个支持逻辑增量的类都需要实现它们(在+=之上-=)。

+=都是多余的-=,因此将成为净亏损。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

什么是运算符==>和=?>?

来自分类Dev

实现|| =和&& =运算符:没有匹配运算符声明的运算符实现

来自分类Dev

python中的for循环和in运算符

来自分类Dev

运算符“ <<”和“ >>”做什么?

来自分类Dev

// =和::运算符做什么?

来自分类Dev

:* =和:= *运算符的含义是什么?

来自分类Python

在Python中使用AND和NOT运算符

来自分类Java

Elasticsearch查询中的OR和AND运算符

来自分类Java

在Java中equals()和运算符“ ==”

来自分类Dev

:=运算符和Golang中的if语句

来自分类Java

读“?” 和Java中的“:”运算符

来自分类Dev

PostgreSQL中的'!='和'<>'运算符

来自分类Dev

在Dart中重载++和+ =运算符

来自分类Dev

解析查询中的和运算符

来自分类Dev

R中的赋值运算符:“ <-”和“ <<-”

来自分类Dev

C ++中重载的==和!=运算符

来自分类Dev

JavaScript中的运算符>>和<<

来自分类Dev

为什么和 vb.net 中的运算符

来自分类Dev

Javascript:为什么要使用逻辑运算符和比较运算符?

来自分类Dev

SQL中的NOT和!=运算符有什么区别?

来自分类Dev

GO 中 += 和 =+ 运算符有什么区别?

来自分类Dev

r编程语言中的'/'运算符和“%/%”运算符有什么区别?

来自分类Dev

字典合并 (|) 和更新运算符 (|=) 运算符之间有什么区别?

来自分类Dev

为什么我的 IF 语句和 OR 运算符没有给我预期的输出?

来自分类Dev

c中具有“后缀减量”和“逻辑与”运算符的运算符关联

来自分类Python

Python中!=和<>运算符之间有区别吗?

来自分类Dev

Python中赋值运算符和复合运算符之间的区别

来自分类Dev

比较运算符和'is'-Python中的运算符优先级?

来自分类Dev

有和没有await运算符的任务执行

Related 相关文章

热门标签

归档