En Python, tenemos varias formas de realizar la indexación en la lista, pero a veces, tenemos más que un elemento para indexar, el verdadero problema comienza cuando tenemos una sublista y su elemento debe indexarse. Analicemos ciertas formas en que esto se puede realizar.
Método #1: Uso index()
de la comprensión de lista +
Este método resuelve este problema en 2 partes, en la primera parte genera una nueva lista y luego realiza la indexación en ella.
# Python3 code to demonstrate # indexing of sublist # using list comprehension + index() # initializing test list test_list = [[1, 'Geeks'], [2, 'For'], [3, 'Geeks']] # printing original list print("The original list : " + str(test_list)) # using list comprehension + index() # indexing of sublist res = [ele for i, ele in test_list].index('For') # print result print("Index of nested element is : " + str(res))
The original list : [[1, 'Geeks'], [2, 'For'], [3, 'Geeks']] Index of nested element is : 1
Método #2: Usonext() + enumerate()
Este problema se puede resolver de manera eficiente usando la combinación de las funciones anteriores. La siguiente función comprueba los elementos y las funciones de enumeración separan los elementos de la lista anidada.
# Python3 code to demonstrate # indexing of sublist # using enumerate() + next() # initializing test list test_list = [[1, 'Geeks'], [2, 'For'], [3, 'Geeks']] # printing original list print("The original list : " + str(test_list)) # using enumerate() + next() # indexing of sublist res = next((i for i, (j, ele) in enumerate(test_list) if ele == 'For'), None) # print result print("Index of nested element is : " + str(res))
The original list : [[1, 'Geeks'], [2, 'For'], [3, 'Geeks']] Index of nested element is : 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