Python: empareje elementos con el elemento trasero en Matrix Row

A veces, mientras trabajamos con datos, podemos tener un problema en el que necesitamos emparejar cada elemento en el contenedor con un elemento de índice específico, como el elemento trasero. Este tipo de problema puede tener aplicación en muchos dominios. Analicemos ciertas formas en que se puede realizar esta tarea.

Método #1: Uso de la comprensión de listas
Esta es una forma en la que se puede realizar esta tarea. En esto, iteramos a través de cada elemento de la fila en la lista y lo emparejamos con el elemento trasero usando la indexación negativa de la lista.

# Python3 code to demonstrate 
# Pair elements with Rear element in Matrix Row
# using list comprehension
  
# Initializing list
test_list = [[4, 5, 6], [2, 4, 5], [6, 7, 5]]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Pair elements with Rear element in Matrix Row
# using list comprehension
res = []
for sub in test_list:
    res.append([[ele, sub[-1]] for ele in sub[:-1]])
      
# printing result 
print ("The list after pairing is : " + str(res))
Producción :

The original list is : [[4, 5, 6], [2, 4, 5], [6, 7, 5]]
The list after pairing is : [[[4, 6], [5, 6]], [[2, 5], [4, 5]], [[6, 5], [7, 5]]]

Método n.º 2: usar el product()bucle +
La combinación de los métodos anteriores también se puede usar para realizar esta tarea. En esto, iteramos a través de la lista y realizamos la tarea de emparejar usando el producto y, por lo tanto, reduciendo un par de bucles.

# Python3 code to demonstrate 
# Pair elements with Rear element in Matrix Row
# using product() + loop
from itertools import product
  
# Initializing list
test_list = [[4, 5, 6], [2, 4, 5], [6, 7, 5]]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Pair elements with Rear element in Matrix Row
# using product() + loop
res = []
for idx in test_list:
    res.append(list(product(idx[:-1], [idx[-1]])))
      
# printing result 
print ("The list after pairing is : " + str(res))
Producción :

The original list is : [[4, 5, 6], [2, 4, 5], [6, 7, 5]]
The list after pairing is : [[[4, 6], [5, 6]], [[2, 5], [4, 5]], [[6, 5], [7, 5]]]

Publicación traducida automáticamente

Artículo escrito por manjeet_04 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 *