Python | Obtener elementos hasta un elemento particular en la lista

A veces, mientras trabajamos con la lista de Python, podemos tener un requisito en el que necesitamos eliminar todos los elementos después de un elemento en particular u obtener todos los elementos antes de un elemento en particular. Ambos son problemas similares y siempre es útil tener una solución. Analicemos ciertas formas en que se puede realizar esta tarea.

Método n.º 1: Usar el index()corte de lista +
Este problema se puede resolver usando la combinación de estas funciones. Se index()puede usar para encontrar el índice del elemento deseado y el corte de listas puede realizar la tarea restante de obtener los elementos.

# Python3 code to demonstrate working of
# Get elements till particular element in list
# using index() + list slicing
  
# initialize list
test_list = [1, 4, 6, 8, 9, 10, 7]
  
# printing original list
print("The original list is : " + str(test_list))
  
# declaring elements till which elements required
N = 8
  
# Get elements till particular element in list
# using index() + list slicing
temp = test_list.index(N)
res = test_list[:temp]
  
# printing result
print("Elements till N in list are : " + str(res))
Producción :

The original list is : [1, 4, 6, 8, 9, 10, 7]
Elements till N in list are : [1, 4, 6]

Método n.º 2: usar el generador
Esta tarea también se puede realizar usando la función de generador que se usa yieldpara obtener los elementos justo hasta el elemento requerido y rompe los rendimientos después de ese elemento.

# Python3 code to demonstrate working of
# Get elements till particular element in list
# using generator
  
# helper function to perform task
def print_ele(test_list, val):
    for ele in test_list:
        if ele == val:
            return
        yield ele
  
# initialize list
test_list = [1, 4, 6, 8, 9, 10, 7]
  
# printing original list
print("The original list is : " + str(test_list))
  
# declaring elements till which elements required
N = 8
  
# Get elements till particular element in list
# using generator
res = list(print_ele(test_list, N))
  
# printing result
print("Elements till N in list are : " + str(res))
Producción :

The original list is : [1, 4, 6, 8, 9, 10, 7]
Elements till N in list are : [1, 4, 6]

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 *