2015-08-07 2 views

ответ

4

Это можно сделать с помощью следующего кода:

In [3]: a = [[0,'abc',1],[0,'def',1]] 
In [4]: b = ['abc','jkl'] 
In [5]: c = a[:] 
In [6]: c.extend([[0,e,1] for e in b if e not in [x for _,x,_ in a]]) 
In [7]: c 
Out[8]: [[0, 'abc', 1], [0, 'def', 1], [0, 'jkl', 1]] 

Надеется, что это помогает!

+0

Большое спасибо, это работает как шарм :) – moatze

+0

@VigneshKalai, выполнив «c = a [:]« Я справляюсь с a до c. –

+0

@VigneshKalai Я отредактировал его некоторое время назад, перед вашим коммантом :) –

0

использовать не, чтобы проверить, если он содержит или не

a = [[0,abc,1],[0,def,1]] 

b = [abc,jkl] 

c = [] 

for i in a: 
    if i not in c: 
     c.append(i) 
for j in b: 
    if j not in c: 
     c.append(j) 
+0

Это совсем не работает. Вы просто добавляете все элементы из a и b в список c. – moatze

3

Как насчет этого?

>>> a = [[0,'abc',1],[0,'def',1]] 
>>> b = ['abc','jkl'] 
>>> c = a[:] 
>>> for i in b: 
...  if [0,i,1] not in a: 
...    c.append([0,i,1]) 
... 
>>> c 
[[0, 'abc', 1], [0, 'def', 1], [0, 'jkl', 1]] 
Смежные вопросы