Programa de Python para encontrar tuplas que tienen todos los elementos divisibles por K de una lista de tuplas

Dada una lista de tuplas. La tarea es extraer todas las tuplas que tienen todos los elementos divisibles por K.

Entrada : test_list = [(6, 24, 12), (60, 12, 6), (12, 18, 21)], K = 6 
Salida : [(6, 24, 12), (60, 12, 6) )] 
Explicación : Ambas tuplas tienen todos los elementos múltiplos de 6.

Entrada : test_list = [(6, 24, 12), (60, 10, 5), (12, 18, 21)], K = 5 
Salida : [(60, 10, 5)] 
Explicación : múltiplo de 5 tuplas extraído. 

Método #1: Usar lista de comprensión + all()

En esto, probamos que todos los elementos sean K múltiples usando all() para fines de filtrado, y la comprensión de listas se usa para la iteración de todas las tuplas.

Python3

# Python3 code to demonstrate working of
# K Multiple Elements Tuples
# Using list comprehension + all()
  
# initializing list
test_list = [(6, 24, 12), (7, 9, 6), (12, 18, 21)]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K
K = 6
  
# all() used to filter elements
res = [sub for sub in test_list if all(ele % K == 0 for ele in sub)]
  
# printing result
print("K Multiple elements tuples : " + str(res))
Producción

The original list is : [(6, 24, 12), (7, 9, 6), (12, 18, 21)]
K Multiple elements tuples : [(6, 24, 12)]

 Método #2: Usando filter() + lambda + all()

En esto, realizamos la tarea de filtrar usando filter() + lambda, y la lógica provista por all(), como en el método anterior.

Python3

# Python3 code to demonstrate working of
# K Multiple Elements Tuples
# Using filter() + lambda + all()
  
# initializing list
test_list = [(6, 24, 12), (7, 9, 6), (12, 18, 21)]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K
K = 6
  
# filter() + lambda for filter operation
res = list(filter(lambda sub: all(ele % K == 0 for ele in sub), test_list))
  
# printing result
print("K Multiple elements tuples : " + str(res))
Producción

The original list is : [(6, 24, 12), (7, 9, 6), (12, 18, 21)]
K Multiple elements tuples : [(6, 24, 12)]

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 *