Python – Producto de elementos hasta el valor K

Uno de los problemas que es básicamente un subproblema para muchos problemas complejos, encontrar el número de producto hasta cierto número en la lista en python, se encuentra comúnmente y este artículo en particular analiza las posibles soluciones a este problema en particular.

Método #1: método ingenuo
La forma más común de resolver este problema es usando un ciclo y simplemente multiplicando las ocurrencias de los elementos que son hasta el número K.

# Python 3 code to demonstrate 
# Elements Product till K value
# using naive method 
  
# initializing list 
test_list = [1, 7, 5, 6, 3, 8] 
  
# initializing k 
k = 6
  
# printing list 
print ("The list : " + str(test_list)) 
  
# using naive method 
# Elements Product till K value
res = 1
for i in test_list : 
    if i <= k : 
        res *= i 
  
# printing the product
print ("The product till K : " + str(res)) 
Producción :

The list : [1, 7, 5, 6, 3, 8]
The product till K : 90

Método #2: Uso de la comprensión de listas
Este método logra esta tarea de manera similar, pero de una manera más concisa. La comprensión de listas siempre reduce las líneas de códigos en el programa aunque ejecuta un enfoque similar en segundo plano.

# Python 3 code to demonstrate 
# Elements Product till K value
# using list comprehension
  
# getting Product 
def prod(val) : 
    res = 1 
    for ele in val: 
        res *= ele 
    return res  
  
# initializing list 
test_list = [1, 7, 5, 6, 3, 8] 
  
# initializing k 
k = 6
  
# printing list 
print ("The list : " + str(test_list)) 
  
# using list comprehension 
# Elements Product till K value
res = prod([i for i in test_list if i <= k]) 
  
# printing the intersection 
print ("The product till K : " + str(res)) 
Producción :

The list : [1, 7, 5, 6, 3, 8]
The product till K : 90

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 *