Вычитание одного списка из другого в Python, где могут возникать повторяющиеся значенияPython

Программы на Python
Anonymous
Вычитание одного списка из другого в Python, где могут возникать повторяющиеся значения

Сообщение Anonymous »

Я хочу удалить содержимое одного массива из другого.

Код: Выделить всё

array_2 = ['one' , "two" , "one", "three", "four"]
array_1 = ['one', "two"]
Моей первой мыслью было использование списков

Код: Выделить всё

array_3 = [x for x in array_2 if x not in array_1]
Однако это удалит повторяющийся элемент
результат: ['три', 'четыре']
Я хочу удалить «один» только один раз из массива, поскольку мне нужно вычитание списка. Поэтому я хочу, чтобы результат был: ['один', 'три', 'четыре'].

Каков хороший питонический способ добиться этого? ?

Подробнее здесь: https://stackoverflow.com/questions/559 ... -may-occur

Вернуться в «Python»