如何存储迭代的最后一个值?

时间:2014-04-05 03:50:11

标签: python

我是python的新手,只是一个简单的问题。

我创建了一个for循环,它遍历列表的值,然后转换为圆的角度(乘以360)。我现在要做的是存储上一次迭代的值。例如,在运行此代码后,我会得到

79.2
118.08
21.6
29.52
10.8
7.2
7.2

守则:

for i in range(len(percentages_minus_index)):
    other_segment_angles = percentages_minus_index[i] * 360

所以基本上,如果第一个值是79.2,我想在循环中存储一个变量,然后在下一次迭代后替换它。例如

迭代1:79.2,前一个值=无 迭代2:118.08,前一个= 79.2

....等等

有任何帮助吗?

2 个答案:

答案 0 :(得分:3)

您可以使用另一个变量,它可以存储以前的值,并且循环列表的更好方法就是这样,

previous = None
for percentage in percentages_minus_index:
    other_segment_angles = percentage * 360
    print previous
    previous = other_segment_angles

但我想知道为什么你会想要使用它,因为你的程序并不依赖于以前的值。例如,如果我想查找n个数字的总和(不使用sum),那么

previous = 0
for number in range(10):
    temp = previous + number
    previous = temp

答案 1 :(得分:0)

你的意思是这样的吗?

percentages_minus_index = [23,14,16,1]

previousValues = [None]*len(percentages_minus_index)

for i in range(len(percentages_minus_index)):
    other_segment_angles = percentages_minus_index[i] * 360
    print(other_segment_angles)
    if i > 0:
        previousValue[i] = percentages_minus_index[i-1] * 360
    print(previousValue[i])