Comparar listas em Python

Manav Narula 30 janeiro 2023
  1. Use o loop for para comparar listas em Python
  2. Use o set para comparar listas em Python
  3. Use a função collection.counter() para comparar duas listas em Python
Comparar listas em Python

As listas são usadas para armazenar vários elementos em uma ordem específica no Python.

Neste tutorial, aprenderemos como comparar duas listas e encontrar os elementos que são iguais.

Use o loop for para comparar listas em Python

O loop for pode ser usado para iterar sobre a lista e comparar cada elemento de uma lista com todos os elementos da segunda lista. Com este método, podemos encontrar elementos de comparação individualmente e descobrir os elementos comuns.

O código a seguir mostra como implementar isso.

l1 = [1, 2, 3]
l2 = [3, 2, 5]
for i in l1:
    for j in l2:
        if i == j:
            print(i)
            break

Resultado:

2
3

Use o set para comparar listas em Python

O Set é uma coleção de elementos e não está ordenado. Podemos converter diretamente uma lista em um conjunto usando a função set() e compará-los por igualdade.

Por exemplo,

l1 = [1, 2, 3, 4, 5]
l2 = [9, 8, 7, 6, 5]

if set(l1) == set(l2):
    print("Lists are equal")
else:
    print("Lists are not equal")

Resultado:

Lists are not equal

Também podemos descobrir os elementos comuns entre duas listas usando o operador &, que retorna a interseção de dois conjuntos.

Por exemplo,

l1 = [1, 2, 3, 4, 5]
l2 = [9, 8, 7, 6, 5]

print("Common Elements", set(l1) & set(l2))

Resultado:

Common Elements {5}

Use a função collection.counter() para comparar duas listas em Python

A função counter() retorna um dicionário que contém todos os elementos na lista e sua frequência como pares chave-valor. Podemos comparar este dicionário para verificar a igualdade e muito mais.

Por exemplo,

import collections

l1 = [1, 2, 3]
l2 = [3, 2, 1]

if collections.Counter(l1) == collections.Counter(l2):
    print("Equal")
else:
    print("Not Equal")

Resultado:

Equal
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artigo relacionado - Python List