Python удалить дубликаты из 2 списков

Я пытаюсь удалить дубликаты из 2 списков. поэтому я написал эту функцию:

a = ["abc", "def", "ijk", "lmn", "opq", "rst", "xyz"]

b = ["ijk", "lmn", "opq", "rst", "123", "456", ]

for i in b:
    if i in a:
        print "found " + i
        b.remove(i)

print b

Но я считаю, что соответствующие элементы, следующие за соответствующим элементом, не удаляются.

Я получаю такой результат:

found ijk
found opq
['lmn', 'rst', '123', '456']

но я ожидаю такой результат:

['123', '456']

Как я могу исправить свою функцию, чтобы сделать то, что я хочу?

Спасибо.

Ответы на вопрос(7)

Ваш ответ на вопрос