Python | Suma de valores no repetitivos en array

A veces necesitamos encontrar los valores únicos en una lista, eso es comparativamente fácil y su suma se ha discutido anteriormente. Pero también podemos obtener una array como entrada, es decir, una lista de listas, en este artículo se analizan las búsquedas únicas en ellas. Veamos ciertas formas en que esto se puede lograr.

Método n.º 1: usarset() + list comprehension + sum()
la función set se puede usar para convertir la lista individual en una lista de elementos que no se repiten y la comprensión de la lista se usa para iterar a cada una de las listas. La tarea de realizar la suma se realiza mediante sum().

# Python3 code to demonstrate
# Non-Repeating value Summation in Matrix
# set() + list comprehension + sum()
  
# initializing matrix 
test_matrix = [[1, 3, 1], [4, 5, 3], [1, 2, 4]]
  
# printing the original matrix
print ("The original matrix is : " + str(test_matrix))
  
# using set() + list comprehension + sum()
# Non-Repeating value Summation in Matrix
res = sum(list(set(i for j in test_matrix for i in j)))
  
# printing result
print ("Unique values summation in matrix are : " + str(res))
Producción :

The original matrix is : [[1, 3, 1], [4, 5, 3], [1, 2, 4]]
Unique values summation in matrix are : 15

Método n.º 2: el usochain() + set() + sum()
de la función de string realiza una tarea similar a la que realiza una lista por comprensión, pero de una manera más rápida, ya que utiliza iteradores para su procesamiento interno y, por lo tanto, más rápido. La tarea de realizar la suma se realiza mediante sum().

# Python3 code to demonstrate
# Non-Repeating value Summation in Matrix
# chain() + set() + sum()
from itertools import chain
  
# initializing matrix 
test_matrix = [[1, 3, 1], [4, 5, 3], [1, 2, 4]]
  
# printing the original matrix
print ("The original matrix is : " + str(test_matrix))
  
# using chain() + set() + sum()
# Non-Repeating value Summation in Matrix
res = sum(list(set(chain(*test_matrix))))
  
# printing result
print ("Unique values summation in matrix are : " + str(res))
Producción :

The original matrix is : [[1, 3, 1], [4, 5, 3], [1, 2, 4]]
Unique values summation in matrix are : 15

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 *