3 回答
TA贡献1809条经验 获得超8个赞
如果您只想要独特的元素,请使用集合:
l1 = [some elements with duplicates] # [1, 2, 3, 1, 2]
l1 = list(set(l1)) # [1, 2, 3]
但是如果你想完全删除重复的元素,你可以这样做
l1 = [some elements with duplicates] # [1, 2, 3, 1, 2]
l1 = [elt for elt in l1 if l1.count(elt) == 1] # [3]
TA贡献1853条经验 获得超18个赞
我无法完全理解“列表中的特定项目及其所有副本”是什么意思。
i) 你是指该项目的所有出现 ii) 还是该项目的所有重复项
对于案例 1:
您可以使用 while 循环从列表中删除元素的所有实例。
>>> 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]
对于案例 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贡献1757条经验 获得超8个赞
使用Python 集来完成这项工作。它永远不会在您的列表中使用任何重复的项目。然后你可以将它转换为列表
代码
l1 = ["apple", "banana", "apple"]
li2 = list(set(l1))
print(li2)
# >>> ['banana', 'apple']
添加回答
举报