如何用循环增加数组?

时间:2014-02-27 17:26:15

标签: python arrays loops

我有两个清单:

listOne = ['33.325556', '59.8149016457', '51.1289412359']
listTwo = ['2.5929778', '1.57945488999', '8.57262235411']

我用len来告诉我列表中有多少项目:

itemsInListOne = int(len(listOne))
itemsInListTwo = int(len(listTwo))

然后,这就是我被卡住的地方。我想使用while循环遍历列表并使用每个循环递增数组。这是我试过的:

iterations = 0

while iterations < itemsInListOne:
        listOne = listOne[0] + 1
        print iterations

while循环显然是错误的,但你可以看到我正在尝试做什么。我想最终得到:

listOne[0]
listOne[1]
listOne[2]

提前致谢。

编辑:为了更好地解释这一点。

我有一个列表,我想循环遍历列表并自动创建一个每次迭代递增的数组,例如:

listOne[0] 
+1
listOne[1] 
+ 1 
listOne[2]

希望这更有意义。

3 个答案:

答案 0 :(得分:1)

你的意思是:

while iterations < itemsInListOne:
    listOne[iterations] = float(listOne[iterations]) + 1

请注意,在添加之前,您需要将其转换为float

另请注意,使用列表理解可以更轻松地完成此操作:

listOne = [float(x) + 1 for x in listOne]

答案 1 :(得分:0)

因为你不能递增list(技术上不是数组),我假设你想增加每个列表元素。如果是这种情况,您可能需要这样的东西:

iterations = 0

while iterations < itemsInListOne:
    listOne[iterations] += 1
    print iterations
    iterations += 1

我希望我理解你,如果不是这样,请考虑改写你的问题,使其更清楚。感谢

答案 2 :(得分:0)

# You could do it in one line using list comprehension in Python
def loop_and_increment(data):                                                   
    return [ str(float(_) + 1) for _ in data]                                   

print loop_and_increment(listOne)                                               
print loop_and_increment(listTwo)