Has*_*use 3 python list duplicates
例如,如果我有:
a = ["apples", "bananas", "cucumbers", "bananas"]
Run Code Online (Sandbox Code Playgroud)
我怎么能删除重复的"香蕉",以便:
a = ["apples", "bananas", "cucumbers"]
Run Code Online (Sandbox Code Playgroud)
另外,如果我有:
a = ["apples", "bananas", "cucumbers"]
b = ["pears", "apples", "watermelons"]
Run Code Online (Sandbox Code Playgroud)
我怎么能从两个列表中删除重复的"苹果",以便:
a = ["bananas", "cucumbers"]
b = ["pears", "watermelons"]
Run Code Online (Sandbox Code Playgroud)
基于集合的解决方案不保留项目的顺序.以下内容将按顺序保留项目并删除除第一次出现之外的所有项目,使用辅助设置来跟踪已经看到的项目.
seen = set()
a = [seen.add(item) or item for item in a if item not in seen]
Run Code Online (Sandbox Code Playgroud)
如果要重用相同的列表对象,可以这样做:
seen = set()
a[:] = (seen.add(item) or item for item in a if item not in seen)
Run Code Online (Sandbox Code Playgroud)