Comparar listas en Python

Manav Narula 30 enero 2023
  1. Utilice el bucle for para comparar listas en Python
  2. Utilice el set para comparar listas en Python
  3. Utilice la función collection.counter() para comparar dos listas en Python
Comparar listas en Python

Las listas se utilizan para almacenar varios elementos en un orden específico en Python.

En este tutorial, aprenderemos cómo comparar dos listas y encontrar los elementos que son iguales.

Utilice el bucle for para comparar listas en Python

El bucle for se puede utilizar para iterar sobre la lista y comparar cada elemento de una lista con todos los elementos de la segunda lista. Con este método, podemos encontrar elementos de comparación individualmente y descubrir los elementos comunes.

El siguiente código muestra cómo implementar esto.

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

Producción :

2
3

Utilice el set para comparar listas en Python

El Set es una colección de elementos y no está ordenado. Podemos convertir directamente una lista en un conjunto usando la función set() y compararlos por igualdad.

Por ejemplo,

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")

Producción :

Lists are not equal

También podemos encontrar los elementos comunes entre dos listas usando el operador &, que devuelve la intersección de dos conjuntos.

Por ejemplo,

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

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

Producción :

Common Elements {5}

Utilice la función collection.counter() para comparar dos listas en Python

La función counter() devuelve un diccionario que contiene todos los elementos de la lista y su frecuencia como pares clave-valor. Podemos comparar este diccionario para verificar la igualdad y más.

Por ejemplo,

import collections

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

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

Producción :

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

Artículo relacionado - Python List