Я написал код на python для удаления дубликатов элементов из списков. У меня есть два отдельных списка, которые выглядят как:Удаление дубликатов из двух списков
lhsNet = ['p', 'p', 'p', 'p', '(2)H', 'p', '(2)H', 'p', '(3)He', '(3)He']
rhsNet = ['(2)H', 'e+', 'nu_e', '(2)H', 'e+', 'nu_e', '(3)He', 'gamma', '(3)He', 'gamma', '(4)He', 'p', 'p']
Вот код:
for x in lhsNet:
for z in rhsNet:
if x == z:
lhsNet.remove(x)
rhsNet.remove(z)
break
Код должен найти повторяющиеся записи, которая существует в обоих списках и удалить его. По какой-то причине после исполнения я остался с:
lhsNet = ['p', 'p', 'p', 'p', '(3)He']
rhsNet = ['e+', 'nu_e', 'e+', 'nu_e', 'gamma', '(3)He', 'gamma', '(4)He']
Очевидно, что удалила все дублирующие записи, которые существуют в обоих списках КРОМЕ последней '(3)He'
. Может ли кто-нибудь объяснить мне, что не так в моем коде и как его исправить?
Действительно ли порядок? – IanAuld
Порядок не имеет значения. –
Я думаю, что, возможно, на самом деле это просто исправлено ... Я вынул перерыв, и теперь он работает. Любая идея, почему это может быть? –