python 列表去重复
时间: 2024-03-16 13:40:17 浏览: 19
在Python中,可以使用多种方法对列表进行去重。以下几种常见的方法:
1. 使用set()函数:将列表转换为集合,集合的特性是元素不重复,然后再将集合转换回列表。这种方法会改变原始列表的顺序。
```python
my_list = [1, 2, 3, 3, 4, 5, 5]
new_list = list(set(my_list))
print(new_list)
```
2. 使用列表推导式:通过遍历原始列表,将不重复的元素添加到新列表中。
```python
my_list = [1, 2, 3, 3, 4, 5, 5]
new_list = []
[new_list.append(x) for x in my_list if x not in new_list]
print(new_list)
```
3. 使用字典:遍历原始列表,将元素作为字典的键,值可以是任意值。由于字典的键是唯一的,重复的元素会被自动去除。然后再将字典的键转换为列表。
```python
my_list = [1, 2, 3, 3, 4, 5, 5]
new_list = list(dict.fromkeys(my_list))
print(new_list)
```
4. 使用collections模块中的OrderedDict类:OrderedDict是一个有序字典,遍历原始列表,将元素作为OrderedDict的键,值可以是任意值。由于OrderedDict的键是唯一的,重复的元素会被自动去除。然后再将OrderedDict的键转换为列表。
```python
from collections import OrderedDict
my_list = [1, 2, 3, 3, 4, 5, 5]
new_list = list(OrderedDict.fromkeys(my_list))
print(new_list)
```
这些方法都可以实现对列表的去重,选择哪种方法取决于你的需求和个人偏好。