0

我知道在 Java 中,如果你想将一个变量添加到你可以使用 x++ 的变量中,Python 中有没有类似的东西。

4

2 回答 2

4

您可以使用

x += 1

python中不存在增量运算符。

正如 Lattyware 指出的那样,对于增量运算符的需求不如在 Java 或 C 中那么多。如果您有一个依赖i+=1于 python 的循环,您可能需要重新考虑您的代码。

举个例子:

避免:

idx = 0
for e in L:
    print (idx, e)
    idx += 1

for idx in range (len (L) ): print (idx, L [idx] )

尝试:

for idx, e in enumerate (L): print (idx, e)

此外,当您需要的序列超出纯整数范围的范围时(例如产生字符串或对象或任何东西),您应该考虑生成器:

def weirdSequence (v):
    while True:
        yield v
        if v == 1: break
        v = v * 3 + 1 if v % 2 else v // 2

for i in weirdSequence (7): print (i)
于 2013-02-03T02:48:59.290 回答
0

正如 Hyperboreus 所说,x++Python 中没有运算符。我认为猜测原因很有趣——我认为 Python 强调赋值不是一个表达式,而有x++其他语言经验的用户可能会期望这个表达式的结果是 x 的未递增值。x++如果 assignment 不是带值的表达式,则和之间没有区别++x。我认为拥有其中一个而不是另一个会令人困惑,但是让它们都做同样的事情将是多余的。

于 2013-02-03T02:55:54.730 回答