Cómo restar dos listas en Python

Python es poderoso pero simple y fácil de usar para principiantes en comparación con otros lenguajes de programación. La secuencia es la estructura de datos básica en Python.

A cada elemento de una secuencia se le asigna un número: su posición o índice. En una secuencia, el primer índice es 0; el segundo índice es 1, y así sucesivamente.

Python tiene seis estructuras de datos secuenciales integradas. Entre todos ellos, las listas, la tupla y la matriz se usan ampliamente en Python. Este artículo discutirá el Listas de Python y cómo restar dos listas en Python .



Antes de continuar, asegurémonos de tener una buena comprensión de las listas de Python. La gente a menudo se equivocaba entre arreglos y listas. Por ahora, aceptemos que las listas de Python son como matrices, aunque hay una pequeña diferencia entre ellas.

Las listas son los tipos de datos más versátiles y dinámicos en Python. Podemos almacenar diferentes tipos de datos dentro de una lista.

No importa si son números, caracteres o cadenas. Para inicializar una lista, debemos poner todos los valores dentro de un corchete y diferenciar cada valor usando una coma.

Los elementos de una lista se conocen como el elemento. Tenga en cuenta que las listas son mutables. Podemos agregar, eliminar y modificar los elementos en cualquier momento en un programa de Python.   Aquí hay un ejemplo de la lista de Python:

 

demo_list1 = ['Mark', 'Alex', 1987, 2020]

demo_list2 = [5, 4, 3, 2, 1 ]

demo_list3 = ["x", "y", "z"]

 

Para imprimir una lista, solo necesitamos escribir el impresión() función en Python. Me gusta de esta manera:

 

print(demo_list1)

 

Ahora, demos un paso más para alcanzar nuestra meta. restar dos listas en Python . Podemos determinar la diferencia entre las dos listas principalmente de dos maneras diferentes. Empecemos.

 

Utilizando el establecer()

Set es un objeto de tipo colección que puede almacenar elementos de diferentes tipos de datos. A establecer() no indexa los valores en un orden particular. Este método convierte las listas en conjuntos de python explícitamente y luego encuentra la diferencia entre ellos. Aquí hay un programa de muestra para su mejor comprensión.

 

def list_diff(my_list1, my_list2):

    return (list(set(my_list1) - set(my_list2)))

my_list1 = [10, 16, 21, 26, 31, 36, 41]

my_list2 = [10, 26, 41, 36]
print(list_diff(my_list1, my_list2))

 

Producción : [ 16 , 21 , 31 ]

los establecer() función aceptó las dos listas definidas en el programa anterior y las convirtió en conjuntos. Dentro de impresión() función, simplemente calculó la diferencia.

 

Usar un bucle for anidado

Para calcular el valor de resta entre dos listas diferentes, simplemente podemos usar un bucle for anidado.

En este método, compararemos todos los elementos de la segunda lista con el primero de forma secuencial y, mientras recorremos, agregaremos todos los elementos que no coincidan a una nueva lista vacía.

Fin del programa, imprimiremos la lista. Aquí tienes:

 

def list_diff(my_list1, my_list2):

    out = []

    for ele in my_list1:

    	if not ele in my_list2:

        	out.append(ele)

    return out

my_list1 = [10, 16, 21, 26, 31, 36, 41]

my_list2 = [10, 26, 41, 36]

print(list_diff(my_list1, my_list2))

 

Producción: [ 16 , 21 , 31 ]

 

Utilizando el método de comprensión de listas

La comprensión de listas es el mismo método que el bucle for anidado. Aquí reemplazaremos el bucle for con la sintaxis de comprensión de lista. Por ejemplo,

 

def list_diff(my_list1, my_list2):

    out = [item for item in my_list1 if not item in my_list2]

    return out

my_list1 = [10, 16, 21, 26, 31, 36, 41]

my_list2 = [10, 26, 41, 36]

print(list_diff(my_list1, my_list2))

 

Producción: [ 16 , 21 , 31 ]

 

Esperamos que después de terminar este tutorial, conozca varias formas de restar dos listas de Python. Sin embargo, puede practicar más con ejemplos para ganar confianza.