Dada una Lista, obtenga todos los elementos que están en su valor de índice.
Entrada : test_list = [3, 1, 8, 5, 4, 10, 6, 9]
Salida : [1, 4, 6]
Explicación : estos elementos están en la misma posición que su número.Entrada : test_list = [3, 10, 8, 5, 14, 10, 16, 9]
Salida : []
Explicación : No hay número en su índice.
Método #1: Usar bucle
En esto, verificamos para cada elemento, si equivale a su índice, se agrega a la lista de resultados.
Python3
# Python3 code to demonstrate working of # Elements with same index # Using loop # initializing list test_list = [3, 1, 2, 5, 4, 10, 6, 9] # printing original list print("The original list is : " + str(test_list)) # enumerate to get index and element res = [] for idx, ele in enumerate(test_list): if idx == ele: res.append(ele) # printing result print("Filtered elements : " + str(res))
The original list is : [3, 1, 2, 5, 4, 10, 6, 9] Filtered elements : [1, 2, 4, 6]
Método n. ° 2: usar la comprensión de listas + enumerar()
En esto, realizamos una función similar al método anterior, pero usamos la comprensión de listas para hacer que la solución sea compacta.
Python3
# Python3 code to demonstrate working of # Elements with same index # Using list comprehension + enumerate() # initializing list test_list = [3, 1, 2, 5, 4, 10, 6, 9] # printing original list print("The original list is : " + str(test_list)) # enumerate to get index and element res = [ele for idx, ele in enumerate(test_list) if idx == ele] # printing result print("Filtered elements : " + str(res))
The original list is : [3, 1, 2, 5, 4, 10, 6, 9] Filtered elements : [1, 2, 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