3 回答
TA貢獻(xiàn)1809條經(jīng)驗(yàn) 獲得超8個(gè)贊
如果您只想要獨(dú)特的元素,請(qǐng)使用集合:
l1 = [some elements with duplicates] # [1, 2, 3, 1, 2]
l1 = list(set(l1)) # [1, 2, 3]
但是如果你想完全刪除重復(fù)的元素,你可以這樣做
l1 = [some elements with duplicates] # [1, 2, 3, 1, 2]
l1 = [elt for elt in l1 if l1.count(elt) == 1] # [3]
TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超18個(gè)贊
我無(wú)法完全理解“列表中的特定項(xiàng)目及其所有副本”是什么意思。
i) 你是指該項(xiàng)目的所有出現(xiàn) ii) 還是該項(xiàng)目的所有重復(fù)項(xiàng)
對(duì)于案例 1:
您可以使用 while 循環(huán)從列表中刪除元素的所有實(shí)例。
>>> l1 = [1,2,3,3,4,4,5,5,5,6,6]
>>> element_to_remove = 5
>>>
>>> while element_to_remove in l1:
... l1.remove(element_to_remove)
>>> l1
[1,2,3,3,4,4,6,6]
對(duì)于案例 2:
>>> l1 = [1,2,3,3,4,4,5,5,5,6,6]
>>> element_to_remove = 5
>>>
>>> while l1.count(element_to_remove) > 1: #removing all the duplicates
... l1.remove(element_to_remove)
>>> l1
[1,2,3,3,4,4,5,6,6]
TA貢獻(xiàn)1757條經(jīng)驗(yàn) 獲得超8個(gè)贊
使用Python 集來(lái)完成這項(xiàng)工作。它永遠(yuǎn)不會(huì)在您的列表中使用任何重復(fù)的項(xiàng)目。然后你可以將它轉(zhuǎn)換為列表
代碼
l1 = ["apple", "banana", "apple"]
li2 = list(set(l1))
print(li2)
# >>> ['banana', 'apple']
添加回答
舉報(bào)
