Programa de Python que imprime las filas de una longitud dada de una array

Dada una array, los siguientes artículos muestran cómo extraer todas las filas con una longitud específica.

Entrada : lista_prueba = [[3, 4, 5, 6], [1, 4, 6], [2], [2, 3, 4, 5, 6], [7, 3, 1]], K = 3 
Salida : [[1, 4, 6], [7, 3, 1]] 
Explicación : las listas extraídas tienen una longitud de 3.
Entrada : test_list = [[3, 4, 5, 6], [1, 4, 6 ], [2], [2, 3, 4, 5, 6], [7, 3, 1]], K = 4 
Salida : [[3, 4, 5, 6]] 
Explicación : las listas extraídas tienen una longitud de 4. 

Método 1: usar la comprensión de listas y len()

En esto, realizamos la tarea de obtener la longitud usando len() y la comprensión de listas hace la tarea de filtrar todas las filas que tienen una longitud específica.

Python3

# initializing list
test_list = [[3, 4, 5, 6], [1, 4, 6], [2], [2, 3, 4, 5, 6], [7, 3, 1]]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K
K = 3
  
# list comprehension is used for extracting K len rows
res = [sub for sub in test_list if len(sub) == K]
  
# printing result
print("The filtered rows : " + str(res))

Producción:

La lista original es: [[3, 4, 5, 6], [1, 4, 6], [2], [2, 3, 4, 5, 6], [7, 3, 1]]

Las filas filtradas: [[1, 4, 6], [7, 3, 1]]

Método 2: Usar filter() , lambda y len()

En este, realizamos la tarea de filtrar usando filter() y lambda. len() se usa para encontrar la longitud de las filas.

Python3

# initializing list
test_list = [[3, 4, 5, 6], [1, 4, 6], [2], [2, 3, 4, 5, 6], [7, 3, 1]]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K
K = 3
  
# filter() + lambda to filter out rows of len K
res = list(filter(lambda sub: len(sub) == K, test_list))
  
# printing result
print("The filtered rows : " + str(res))

Producción:

La lista original es: [[3, 4, 5, 6], [1, 4, 6], [2], [2, 3, 4, 5, 6], [7, 3, 1]]

Las filas filtradas: [[1, 4, 6], [7, 3, 1]]

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 *