优草派  >   Python

Python去除列表中重复元素的方法

何明轩            来源:优草派

Python是一种非常流行的编程语言,它简单易学、应用广泛。在Python开发中,有时我们需要从列表中删除重复元素。本文将从多个角度分析Python去除列表中重复元素的方法。

Python去除列表中重复元素的方法

一、使用set去重

我们可以将列表转换为集合,然后再转换为列表,这样就去除了列表中的重复元素。

具体操作如下:

```python

a = [1,2,3,3,4,5,5]

b = list(set(a))

print(b)

```

输出结果为:

```python

[1, 2, 3, 4, 5]

```

这种方法简单快捷,但会打乱原有的数据顺序。

二、使用字典去重

我们还可以将列表中的元素作为字典的键,值可以随意设置,然后通过将字典键转换为列表,就能去除列表中的重复元素。

具体操作如下:

```python

a = [1,2,3,3,4,5,5]

de = {}.fromkeys(a)

b = list(de.keys())

print(b)

```

输出结果为:

```python

[1, 2, 3, 4, 5]

```

这种方法能够保持原有的数据顺序,但对于一些含有特殊符号的元素(例如字典、嵌套列表)无法去重。

三、使用列表推导式去重

列表推导式是Python中一种简介而强大的语法,我们可以使用列表推导式快速去除列表中的重复元素。

具体操作如下:

```python

a = [1,2,3,3,4,5,5]

b = []

[b.append(i) for i in a if i not in b]

print(b)

```

输出结果为:

```python

[1, 2, 3, 4, 5]

```

这种方法简便方便,但当列表中含有大量重复元素时,运行速度会变慢。

四、使用pandas库去重

如果我们需要处理大规模数据,可以使用pandas库中的drop_duplicates()函数。

实际操作如下:

```python

import pandas as pd

a = [1,2,3,3,4,5,5]

ser = pd.Series(a)

b = list(ser.drop_duplicates())

print(b)

```

输出结果为:

```python

[1, 2, 3, 4, 5]

```

这种方法使用起来不如前几种方法方便,但当列表中含有大量重复元素时,运行速度较快。

以上就是Python去除列表中重复元素的方法,不同的方法适用于不同的场景。希望本文对您有所帮助。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行