可能重复:
Python:递增和递减运算符的行为
当我回顾我的VB6时,我总是嘲笑自己,并且想:"现代语言不允许用双加号增加?":
number++
Run Code Online (Sandbox Code Playgroud)
令我惊讶的是,我在Python文档中找不到任何相关内容.我真的要服从自己number = number + 1吗?人们不会使用这种++/--符号吗?
Dan*_*ach 1304
Python不支持++,但您可以这样做:
number += 1
Run Code Online (Sandbox Code Playgroud)
Tho*_*ers 435
简单地说,Python中不存在++和--运算符,因为它们不是运算符,它们必须是语句.为简单起见和一致性,Python中的所有命名空间修改都是一个声明.这是设计决策之一.因为整数是不可变的,所以"改变"变量的唯一方法就是重新分配它.
幸运的是我们有一个的用例美妙的工具++和--其他语言,如enumerate()和itertools.count().
Pie*_*tte 26
是.该++运营商不可用Python编写的.Guido不喜欢这些运营商.
Mik*_*ham 21
++在C语言中派上用场的主要原因是为了跟踪索引.在Python中,您以抽象的方式处理数据,很少通过索引等来增加数据.最接近于灵的东西++是next迭代器的方法.
Uri*_*Uri 12
看看Python中增量和减量运算符的行为,以解释为什么这不起作用.
Python并没有真正拥有++和 - 而且我个人从未觉得这是一种损失.
我更喜欢具有明确名称的函数到具有非始终清晰语义的运算符(因此关于++ x与x ++的经典访谈问题以及重载它的困难).我也从未成为后增量对可读性的忠实粉丝.
您总是可以使用明确的增量语义定义一些包装类(如累加器),然后执行类似x.increment()或x.incrementAndReturnPrev()的操作.
这里有一个解释:http: //bytes.com/topic/python/answers/444733-why-there-no-post-pre-increment-operator-python
然而,缺少这个运算符是在python哲学中增加一致性并避免隐含性.
另外,这种增量在python代码中没有广泛使用,因为python具有迭代器模式和函数枚举的强大实现.
| 归档时间: |
|
| 查看次数: |
1036762 次 |
| 最近记录: |