我想找到列表中的非唯一元素,但我無法弄清楚爲什麼這不會發生在下面的代碼部分。在列表中找不到非唯一元素不起作用
>>> d = [1, 2, 1, 2, 4, 4, 5, 'a', 'b', 'a', 'b', 'c', 6,'f',3]
>>> for i in d:
... if d.count(i) == 1:
... d.remove(i)
...
>>> d
[1, 2, 1, 2, 4, 4, 'a', 'b', 'a', 'b', 6, 3]
6和3應該已被刪除。 如果我使用
d = [1, 2, 1, 2, 4, 4, 5, 'a', 'b', 'a', 'b', 'c']
我得到正確的答案。請解釋發生了什麼,我很困惑!
我正在使用python 2.7.5。
感謝。使用計數器它正在工作,但爲什麼這段代碼不起作用。我想知道它有什麼問題?! –
@tanmay查看修改。 – arshajii
@arshajii很好的解釋! – alecxe