python二维list去重
时间: 2023-09-13 08:11:21 浏览: 122
python可迭代对象去重实例
有多种方法可以对 Python 中的二维列表进行去重,下面介绍其中两种:
方法一:使用 set 嵌套列表推导式
```python
lst = [[1, 2], [2, 3], [1, 2], [4, 5], [2, 3]]
new_lst = list(set(tuple(i) for i in lst))
result = [list(i) for i in new_lst]
print(result)
```
输出结果为:
```
[[1, 2], [4, 5], [2, 3]]
```
方法二:使用列表推导式和内置函数 any
```python
lst = [[1, 2], [2, 3], [1, 2], [4, 5], [2, 3]]
new_lst = []
for i in lst:
if not any(i == j for j in new_lst):
new_lst.append(i)
print(new_lst)
```
输出结果同样为:
```
[[1, 2], [2, 3], [4, 5]]
```
这里使用了内置函数 any,它接受一个可迭代对象作为参数,如果其中有任意一个元素为 True,则返回 True,否则返回 False。在这个例子中,对于二维列表中的每一个子列表 i,使用列表推导式遍历 new_lst 中的每一个元素 j,如果 i == j,则说明 i 已经存在于 new_lst 中,不需要再添加,否则将 i 添加到 new_lst 中。
阅读全文