Dada una lista, extraiga los elementos que tienen K como el siguiente elemento.
Entrada : test_list = [2, 3, 5, 7, 8, 5, 3, 5], K = 3
Salida : [2, 5]
Explicación : los elementos antes del 3 son 2, 5.Entrada : test_list = [2, 3, 5, 7, 8, 5, 3, 8], K = 8
Salida : [7, 3]
Explicación : los elementos antes del 8 son 7, 3.
Método #1: Usar bucle
En esto, iteramos la lista y buscamos cada K, y extraemos el elemento que lo precede.
Python3
# Python3 code to demonstrate working of # Extract elements succeeded by K # Using loop # initializing list test_list = [2, 3, 5, 7, 8, 5, 3, 5] # printing original list print("The original list is : " + str(test_list)) # initializing K K = 5 # Using loop to extract elements succeeded by K res = [] for idx in range(len(test_list) - 1): # checking for succession if test_list[idx + 1] == K: res.append(test_list[idx]) # printing result print("Extracted elements list : " + str(res))
The original list is : [2, 3, 5, 7, 8, 5, 3, 5] Extracted elements list : [3, 8, 3]
Método #2: Usar la comprensión de listas
Otra forma de resolver esta pregunta, en esto, usamos la comprensión de listas como abreviatura para resolver el problema de obtener elementos.
Python3
# Python3 code to demonstrate working of # Extract elements succeeded by K # Using list comprehension # initializing list test_list = [2, 3, 5, 7, 8, 5, 3, 5] # printing original list print("The original list is : " + str(test_list)) # initializing K K = 5 # List comprehension used as shorthand res = [test_list[idx] for idx in range(len(test_list) - 1) if test_list[idx + 1] == K] # printing result print("Extracted elements list : " + str(res))
The original list is : [2, 3, 5, 7, 8, 5, 3, 5] Extracted elements list : [3, 8, 3]
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