将当前项与python列表中的下一项进行比较

时间:2014-07-04 15:46:43

标签: python

考虑到python列表,如何将当前项目与下一个项目进行比较?例如:

mylist = [1, 2, 2, 4, 2, 3]
for i in mylist:        
    if i == next item:
       replace (both i and next item) with "same value"

 >>> [1, "same value", "same value", 4, 2, 3]  

1 个答案:

答案 0 :(得分:7)

您可以使用枚举:

mylist = [1, 2, 2, 4, 2, 3]
for i, j in enumerate(mylist[:-1]):
    if j  == mylist[i+1]: 
        mylist[i] = "foo" 
        mylist[i+1] = "foo"
print mylist
[1, 'foo', 'foo', 4, 2, 3]

j是迭代中的当前元素,mylist[i+1]是下一个,如果j=4mylist[i+1] = 2等。mylist[:-1]遍历所有元素除了最后一个,所以最后mylist[i+1]获取列表中的最后一个元素。