Python去重方法用法介绍(python去重)

一、集合去重

在Python中,最常用的去重方法是利用集合(set)。集合是一种无序、不重复元素的数据结构。通过将列表(list)转化为集合(set),即可去除列表中的重复元素。这种方法是最简单、最基础的去重方法。

lst = [1, 2, 3, 3, 4, 4, 5]
set_lst = set(lst)
unique_lst = list(set_lst)
print(unique_lst)

输出结果:

[1, 2, 3, 4, 5]

除了列表之外,集合还可以对字符串、元组等数据类型进行去重。

二、字典键去重

字典(dict)是Python中另一个常用的数据结构。通过使用字典键(key)来去重列表中的元素。具体步骤是:遍历列表中的每个元素,将每个元素作为键存储在字典中。由于字典键不能重复,这样就可以保留列表中的唯一元素。

lst = [1, 2, 3, 3, 4, 4, 5]
dict_lst = {}
for i in lst:
    dict_lst[i] = 1
unique_lst = list(dict_lst.keys())
print(unique_lst)

输出结果:

[1, 2, 3, 4, 5]

这种方法虽然不如集合方法简便,但在需要保留元素顺序的情况下,可以保证元素的顺序不变。

三、循环去重

循环去重是一种比较朴素的去重方法。对于一个新列表,依次检查旧列表中的每个元素是否已经存在于新列表中。如果不存在,则将该元素加入新列表。这种方法比较麻烦,但可以保证元素的顺序不变。

lst = [1, 2, 3, 3, 4, 4, 5]
unique_lst = []
for i in lst:
    if i not in unique_lst:
        unique_lst.append(i)
print(unique_lst)

输出结果:

[1, 2, 3, 4, 5]

四、Counter去重

Python中内置的collections模块中的Counter可以统计列表中每个元素出现的次数。通过转化为字典可以得到每个元素出现的次数,从而找出列表中的唯一元素。

from collections import Counter

lst = [1, 2, 3, 3, 4, 4, 5]
count_lst = Counter(lst)
unique_lst = list(count_lst.keys())
print(unique_lst)

输出结果:

[1, 2, 3, 4, 5]

五、Numpy去重

除了Python内置的模块,还可以使用外部模块来实现列表去重。Numpy是一种Python常用的计算科学库。可以利用Numpy的unique函数去除列表中的重复元素。

import numpy as np

lst = [1, 2, 3, 3, 4, 4, 5]
unique_lst = np.unique(lst)
print(unique_lst)

输出结果:

[1 2 3 4 5]

六、Pandas去重

Pandas是一个Python数据分析库,可以轻松地进行数据操作和处理。可以使用Pandas的drop_duplicates函数对列表进行去重。

import pandas as pd

lst = [1, 2, 3, 3, 4, 4, 5]
unique_lst = pd.Series(lst).drop_duplicates().tolist()
print(unique_lst)

输出结果:

[1, 2, 3, 4, 5]

七、总结

本文介绍了Python中常用的七种去重方法。其中常用的集合、字典键、循环、Counter和Numpy方法简单易行。Pandas方法虽然较为繁琐,但是在对数据进行处理时是较为实用的。在实际应用时,可以根据具体情况选择合适的方法进行去重。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平