考虑到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]
Run Code Online (Sandbox Code Playgroud)
Pad*_*ham 11
你可以使用枚举:
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]
Run Code Online (Sandbox Code Playgroud)
j是迭代中的当前元素,mylist[i+1]是下一个,if j=4,mylist[i+1] = 2etc .. mylist[:-1]遍历除了last之外的所有元素,所以最后mylist[i+1]一个元素获取列表中的最后一个元素.