for循环中的累积值?

时间:2013-10-15 12:59:10

标签: python for-loop

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

4 个答案:

答案 0 :(得分:2)

所以许多方式。 Python称这些为the "in-place" operators

你还有像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))

答案 1 :(得分:1)

foo = 0
for i in range(0, 12):
    foo += 1
print(foo)

答案 2 :(得分:1)

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

x = 0

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

print x

答案 3 :(得分: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