Я новичок в питоне. Может ли кто-нибудь помочь мне понять, почему не работает следующая функция? Предполагается вернуть новый список с удаленными дубликатами, но вместо этого печатает [4,6]
.
def remove_duplicates(l):
solution = []
for item in l:
if l.count(item) < 2:
solution.append(item)
else:
l.remove(item)
return solution
print (remove_duplicates([4,5,5,5,4,6]))
Я думал, что это повторяет один элемент за раз в списке. Таким образом, первые 5 будут иметь счет 3 и будут удалены, вторые пять будут иметь счет 2 и будут удалены, а третьи 5 будут иметь счет 1 и добавлены в список решений. Я не могу обернуть голову, почему 5s будут полностью удалены, а 4s - нет.