我有一个这样的嵌套列表。
[['a','g','c'],['e','c','g']...]
我试图查看第三个条目是否等于列表中的第二个条目。如果是,我想返回该列表中的第一个条目。因此,由于列表1中的第3个条目是c,我想在所有列表中的第二个条目中查找c。由于列表2在第二个条目中具有相应的值,我想返回e,然后将其附加到嵌套列表1.有多个列表,并且想要对所有列表执行此操作。
所以
[['a','g','c','e']...]]
答案 0 :(得分:2)
您可以尝试下面的内容,
>>> l = [['a','g','c'],['e','c','g']]
>>> i = l[0][2] # stores the value of 2nd index of l[0] to the variable i
>>> m = l[0] # assigns the 0th index of l to m
>>> for j in l[1:]:
if i == j[1]:
m.append(j[0])
>>> m
['a', 'g', 'c', 'e']
一个复杂的例子。
>>> l = [['a','g','c'],['e','c','g'], ['m','c','g'], ['j','c','g'], ['k','f','g'], ['p','c','g']]
>>> i = l[0][2]
>>> m = l[0]
>>> for j in l[1:]:
if i == j[1]:
m.append(j[0])
>>> m
['a', 'g', 'c', 'e', 'm', 'j', 'p']
答案 1 :(得分:0)
k=[['a','g','c'],['e','c','g'],['m','c','g'],['j','c','g'],['k','f','g'],['p','g','k']]
print [x+y[:1] for x,y in zip(k,k[1:]) if x[2]==y[1]]
试试这个。