Como obter valores únicos a partir de uma lista em Python

Hassan Saeed 30 janeiro 2023
  1. Utilize dict.fromkeys para obter valores únicos de uma lista em Python
  2. Utilize uma Nova Lista para obter valores únicos da lista original em Python
  3. Utilize set() para obter valores únicos a partir de uma lista em Python
Como obter valores únicos a partir de uma lista em Python

Este tutorial discute métodos para obter valores únicos a partir de uma lista em Python.

Utilize dict.fromkeys para obter valores únicos de uma lista em Python

Podemos utilizar o método dict.fromkeys da classe dict para obter valores únicos de uma lista Python. Este método preserva a ordem original dos elementos e mantém apenas o primeiro elemento das duplicatas. O exemplo abaixo ilustra isto.

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

Resultado:

[2, 3, 1, 4, 5]

Utilize uma Nova Lista para obter valores únicos da lista original em Python

Outro método para obter valores únicos de uma lista em Python é criar uma nova lista e adicionar apenas elementos únicos a ela da lista original. Este método preserva a ordem original dos elementos e mantém apenas o primeiro elemento das duplicatas. O exemplo abaixo ilustra isto.

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

Resultado:

[2, 3, 1, 4, 5]

Utilize set() para obter valores únicos a partir de uma lista em Python

O Set em Python contém apenas valores únicos. Podemos inserir os valores de nossa lista em um set para obter valores únicos. Entretanto, este método não preserva a ordem dos elementos. O exemplo abaixo ilustra isso.

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

Resultado:

[1, 2, 3, 4, 5]

Observe que a ordem dos elementos não é preservada como na lista original.

Artigo relacionado - Python List