在Python中,如何从一个或多个列表中删除重复项?
发布时间:2020-12-20 12:09:42 所属栏目:Python 来源:网络整理
导读:参见英文答案 Removing duplicates in lists????????????????????????????????????44个 例如,如果我有: a = ["apples","bananas","cucumbers","bananas"] 我怎么能删除重复的“香蕉”,以便: a = ["apples","cucumbers"] 另外,如果我有: a = ["apples","cu
参见英文答案 >
Removing duplicates in lists????????????????????????????????????44个
例如,如果我有: a = ["apples","bananas","cucumbers","bananas"] 我怎么能删除重复的“香蕉”,以便: a = ["apples","cucumbers"] 另外,如果我有: a = ["apples","cucumbers"] b = ["pears","apples","watermelons"] 我怎么能从两个列表中删除重复的“苹果”,以便: a = ["bananas","watermelons"] 解决方法
基于集合的解决方案不保留项目的顺序.以下内容将按顺序保留项目并删除除第一次出现之外的所有项目,使用辅助设置来跟踪已经看到的项目.
seen = set() a = [seen.add(item) or item for item in a if item not in seen] 如果要重用相同的列表对象,可以这样做: seen = set() a[:] = (seen.add(item) or item for item in a if item not in seen) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |