Python | Calcular la diferencia entre los elementos adyacentes en la lista dada

Dada una lista, la tarea es crear una nueva lista que contenga la diferencia de elementos adyacentes en la lista dada.

Método #1: Usarzip()

# Python code to demonstrate
# to calculate difference
# between adjacent elements in list
  
  
# initialising _list
ini_list = [5, 4, 89, 12, 32, 45]
  
# printing iniial_list
print("intial_list", str(ini_list))
  
# Calculating difference list
diff_list = []
for x, y in zip(ini_list[0::], ini_list[1::]):
    diff_list.append(y-x)
      
# printing difference list
print ("difference list: ", str(diff_list))
        
Producción:

intial_list [5, 4, 89, 12, 32, 45]
difference list:  [-1, 85, -77, 20, 13]

 
Método n.º 2: usar un enfoque ingenuo

# Python code to demonstrate
# to calculate difference
# between adjacent elements in list
  
  
# initialising _list
ini_list = [5, 4, 89, 12, 32, 45]
  
# printing iniial_list
print("intial_list", str(ini_list))
  
# Calculating difference list
diff_list = []
  
for i in range(1, len(ini_list)):
    diff_list.append(ini_list[i] - ini_list[i-1])
  
# printing difference list
print ("difference list: ", str(diff_list))
Producción:

intial_list [5, 4, 89, 12, 32, 45]
difference list:  [-1, 85, -77, 20, 13]

 
Método #3: Usando numpy

# Python code to demonstrate
# to calculate difference
# between adjacent elements in list
  
import numpy as np
# initialising _list
ini_list = np.array([5, 4, 89, 12, 32, 45])
  
# printing iniial_list
print("intial_list", str(ini_list))
  
# Calculating difference list
diff_list = np.diff(ini_list)
  
# printing difference list
print ("difference list: ", str(diff_list))
Producción:

intial_list [ 5  4 89 12 32 45]
difference list:  [ -1  85 -77  20  13]

Publicación traducida automáticamente

Artículo escrito por garg_ak0109 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *