如何在 Python 中从列表中获取唯一值

Hassan Saeed 2023年1月30日
  1. 使用 dict.fromkeys 从 Python 中的列表中获取唯一值
  2. 在 Python 中使用一个新的列表来获取原始列表中的唯一值
  3. 在 Python 中使用 set() 从列表中获取唯一值
如何在 Python 中从列表中获取唯一值

本教程讨论了在 Python 中从一个列表中获取唯一值的方法。

使用 dict.fromkeys 从 Python 中的列表中获取唯一值

我们可以使用 dict 类的 dict.fromkeys 方法从一个 Python 列表中获取唯一的值。这个方法保留了元素的原始顺序,并且只保留重复的第一个元素。下面的例子说明了这一点。

inp_list = [2, 2, 3, 1, 4, 2, 5]
unique_list = list(dict.fromkeys(inp_list))
print(unique_list)

输出:

[2, 3, 1, 4, 5]

在 Python 中使用一个新的列表来获取原始列表中的唯一值

在 Python 中从一个列表中获取唯一值的另一种方法是创建一个新的列表,并从原列表中只添加唯一的元素。这种方法保留了元素的原始顺序,只保留重复的第一个元素。下面的例子说明了这一点。

inp_list = [2, 2, 3, 1, 4, 2, 5]
unique_list = []
[unique_list.append(x) for x in inp_list if x not in unique_list]
unique_list

输出:

[2, 3, 1, 4, 5]

在 Python 中使用 set() 从列表中获取唯一值

在 Python 中,set 只保存唯一的值。我们可以将列表中的值插入到 set 中以获得唯一的值。然而,这种方法并不保留元素的顺序。下面的例子说明了这一点。

inp_list = [2, 2, 3, 1, 4, 2, 5]
unique_list = list(set(inp_list))
print(unique_list)

输出:

[1, 2, 3, 4, 5]

请注意,元素的顺序并没有像在原始列表中那样被保留下来。

相关文章 - Python List