-6

有没有办法在 Python for 循环中获取“累积”值?在 Java 中,在每次循环迭代期间都有一个变量 += 的方式,它会继续添加它。Python中有这样的选项吗?

4

4 回答 4

3

这么方法。Python 将这些称为“就地”操作符

您还可以使用函数式方法,例如sum和更通用的累加器reduce,在 Python 3 中移至functools

acc = 0
for i in range(10):
  acc += i

或者

acc = sum(range(10))

或者

from operator import add
from functools import reduce
acc = reduce(add, range(10))
于 2013-10-15T13:02:02.957 回答
1
foo = 0
for i in range(0, 12):
    foo += 1
print(foo)
于 2013-10-15T13:00:19.530 回答
1

+=是的, Python 中有一个运算符。

x = 0

for i in range(10):
    x += 1

print x
于 2013-10-15T13:00:56.530 回答
0
for i in range(0, 5):
    print i

输出:

0
1
2
3
4

或者,如果您想通过多个:

for i in range(0, 10, 2):
    print i

输出:

0
2
4
6
8
于 2013-10-15T13:01:17.087 回答