首页 文章

用[重复]递增的Python整数

提问于
浏览
599

可能重复:Python:递增和递减运算符的行为

当我回顾我的VB6时,我总是嘲笑自己,并且想:“现代语言不允许用双加号增加?”:

number++

令我惊讶的是,我在Python文档中找不到任何相关内容 . 我真的要受制于 number = number + 1 吗?人们不使用 ++/-- 符号吗?

8 回答

  • 11

    Python不支持 ++ ,但你可以这样做:

    number += 1
    
  • 36

    简单地说, ++-- 运营商不应该是运营商,他们必须是声明 . 为简单起见和一致性,Python中的所有命名空间修改都是一个声明 . 那个's one of the design decisions. And because integers are immutable, the only way to '改变'变量是通过重新分配它 .

    幸运的是,我们为其他语言的 ++-- 的用例提供了很棒的工具,例如 enumerate()itertools.count() .

  • 23

    你可以做:

    number += 1
    
  • 8

    是 . ++ 运算符在Python中不可用 . Guido不喜欢这些运营商 .

  • 369

    在C语言中派上用场的主要原因是跟踪索引 . 在Python中,您以抽象的方式处理数据,很少通过索引等来增加数据 . ++ 中最接近精神的东西是迭代器的 next 方法 .

  • 19

    您可以使用:

    number += 1
    
  • 1079

    看看Behaviour of increment and decrement operators in Python,了解为什么这不起作用的解释 .

    Python并没有真正拥有和 - 而且我个人从未觉得这是一种损失 .

    我更喜欢具有明确名称的函数到具有非始终清晰语义的运算符(因此关于x与x的经典访谈问题以及重载它的困难) . 我也从未成为后增量对可读性的忠实粉丝 .

    您总是可以使用明确的增量语义定义一些包装类(如累加器),然后执行类似x.increment()或x.incrementAndReturnPrev()的操作 .

  • 15

    这里有一个解释:http://bytes.com/topic/python/answers/444733-why-there-no-post-pre-increment-operator-python

    然而,缺少这个运算符是在python哲学中增加一致性并避免隐含性 .

    另外,这种增量在python代码中没有广泛使用,因为python具有迭代器模式和函数枚举的强大实现 .

相关问题