在Python中访问列表的两个连续元素

时间:2013-12-15 03:22:35

标签: python list iteration

我需要访问列表的nn+1元素。例如,如果我的列表为[1,2,3,4,5]且我的第n个元素为2,则我需要列表中的下一个元素3

具体来说,我需要访问这些元素才能使用它们在矩阵A中查找值

我有一个迭代遍历列表的for循环:

list = [1,2,3,4,5]

for i in list:
  value = A[i,i+1] #access A[1,2], A[2,3], A[3,4], A[4,5]

问题在于我无法执行i+1操作来访问列表中的n+1元素。这是我第一次用Python编程,我假设元素访问与C / C ++中的相同,但事实并非如此。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:6)

您可以像这样使用slicing operator

A = [1, 2, 3, 4, 5]
for i in range(len(A) - 1):
    value = A[i:i+2]

range功能可让您迭代len(A) - 1次。

答案 1 :(得分:2)

枚举可以让您访问每个项目的索引:

for i, _ in enumerate(A[:-1]):
    value = A[i:i+2]

如果你需要的只是数据对:

for value in zip(A, A[1:]):
    value