Python 常用列表去重方法

本文介绍两种有效的Python列表去重方法。方法一通过遍历列表并计算每个元素的出现次数,去除重复元素。方法二创建一个新列表,仅添加未出现过的元素,实现去重。

#列表去重
#把一个列表重复元素去重;重复元素只保留一个;
#方法1:
l = [1,2,3,2,2,4,4,5,9,20]

for value in l:
num_count=l.count(value)
if num_count>1:
for i in range(num_count-1):
l.remove(value)

print(l)

#封装成函数
def rm_duplic(l):
for value in l:
count=l.count(value)
if count>1:
for i in range(cout-1):
l.remove(value)
return l

#方法2:
def rm_duplic(l):
new_list=[]
for value in l:
if value in new_list:
continue
else:
new_list.append(value)
return new_list

Python 中,列表是常见的操作,可以通过多种方法实现,适应不同的需求和场景。以下是几种常用方法: ### 使用集合(Set) 集合是一种无序且不包含复元素的数据结构。通过将列表转换为集合,再转换回列表,可以快速复元素。需要注意的是,这种方法会丢失原始列表的顺序[^1]。 ```python original_list = [2, 1, 3, 4, 1] unique_list = list(set(original_list)) ``` ### 使用列表推导式 列表推导式结合辅助列表,可以在保留原始顺序的同时实现操作。该方法通过判断元素是否已存在于新列表中来决定是否添加[^2]。 ```python lst1 = [2, 1, 3, 4, 1] temp = [] [temp.append(i) for i in lst1 if i not in temp] ``` ### 使用循环创建列表 通过遍历原始列表并逐个判断是否已存在于新列表中,可以实现顺序保留的操作。虽然代码稍长,但逻辑清晰,适用于对顺序有要求的场景[^3]。 ```python original_list = [2, 1, 3, 4, 1] unique_list = [] for item in original_list: if item not in unique_list: unique_list.append(item) ``` ### 使用 `dict.fromkeys()` 方法Python 3.7 开始,字典的键保证插入顺序,因此可以使用 `dict.fromkeys()` 方法,同时保留原始顺序[^1]。 ```python original_list = [2, 1, 3, 4, 1] unique_list = list(dict.fromkeys(original_list)) ``` ### 使用 `pandas` 库(适用于数据分析场景) 在处理大规模数据时,可以借助 `pandas` 库的 `unique()` 函数实现,该方法效率较高,适合数据处理和分析场景[^2]。 ```python import pandas as pd original_list = [2, 1, 3, 4, 1] unique_list = pd.unique(original_list).tolist() ``` 以上方法各有特点,选择时需考虑是否保留原始顺序、性能要求以及是否依赖第三方库等因素。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值