在Python中,对二维列表去重可以通过以下几种方法实现:
使用`set`和列表推导式
original_list = [[1, 2], [3, 4], [1, 2], [5, 6]]
unique_list = list(set([tuple(t) for t in original_list]))
unique_list = [list(t) for t in unique_list]
print(unique_list) 输出:[[1, 2], [3, 4], [5, 6]]
使用`numpy`库的`unique`函数
import numpy as np
c = np.array([[1, 2], [3, 4], [1, 2], [5, 6]])
unique_c = np.unique(c, axis=0)
print(unique_c) 输出:[[1 2]
[3 4]
[5 6]]

使用循环遍历
original_list = [[1, 2], [3, 4], [1, 2], [5, 6]]
unique_list = []
for sublist in original_list:
if tuple(sublist) not in [tuple(t) for t in unique_list]:
unique_list.append(sublist)
print(unique_list) 输出:[[1, 2], [3, 4], [5, 6]]
使用字典的`fromkeys`方法
original_list = [[1, 2], [3, 4], [1, 2], [5, 6]]
unique_list = list(dict.fromkeys([tuple(sublist) for sublist in original_list]))
unique_list = [list(t) for t in unique_list]
print(unique_list) 输出:[[1, 2], [3, 4], [5, 6]]
以上方法都可以有效地去除二维列表中的重复行,同时保持原列表中行的顺序不变。选择哪种方法取决于具体的需求和上下文