我知道在 Java 中,如果你想将一个变量添加到你可以使用 x++ 的变量中,Python 中有没有类似的东西。
问问题
245 次
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 回答