考虑一个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]
考虑一个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]
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=4
,mylist[i+1] = 2
等等。 mylist[:-1]
循环遍历除最后一个元素外的所有元素,因此最后一个 mylist[i+1]
获取列表中的最后一个元素。