Encuentra el último índice coincidente

PythonPythonBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En Python, podemos usar una comprensión de lista y enumerate() para encontrar el índice del último elemento en una lista que cumpla una condición dada. Este desafío probará tu capacidad para usar estas herramientas para resolver un problema.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/AdvancedTopicsGroup(["Advanced Topics"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python/BasicConceptsGroup -.-> python/comments("Comments") python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") python/ControlFlowGroup -.-> python/for_loops("For Loops") python/DataStructuresGroup -.-> python/lists("Lists") python/DataStructuresGroup -.-> python/tuples("Tuples") python/FunctionsGroup -.-> python/function_definition("Function Definition") python/FunctionsGroup -.-> python/lambda_functions("Lambda Functions") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") python/AdvancedTopicsGroup -.-> python/iterators("Iterators") subgraph Lab Skills python/comments -.-> lab-13637{{"Encuentra el último índice coincidente"}} python/conditional_statements -.-> lab-13637{{"Encuentra el último índice coincidente"}} python/for_loops -.-> lab-13637{{"Encuentra el último índice coincidente"}} python/lists -.-> lab-13637{{"Encuentra el último índice coincidente"}} python/tuples -.-> lab-13637{{"Encuentra el último índice coincidente"}} python/function_definition -.-> lab-13637{{"Encuentra el último índice coincidente"}} python/lambda_functions -.-> lab-13637{{"Encuentra el último índice coincidente"}} python/build_in_functions -.-> lab-13637{{"Encuentra el último índice coincidente"}} python/iterators -.-> lab-13637{{"Encuentra el último índice coincidente"}} end

Encuentra el último índice coincidente

Escribe una función find_last_index(lst, fn) que tome una lista lst y una función fn como argumentos. La función debe devolver el índice del último elemento en lst para el cual fn devuelva True. Si ningún elemento satisface la condición, la función debe devolver -1.

def find_last_index(lst, fn):
  return len(lst) - 1 - next(i for i, x in enumerate(lst[::-1]) if fn(x))
find_last_index([1, 2, 3, 4], lambda n: n % 2 == 1) ## 2

Resumen

En este desafío, aprendiste cómo usar una comprensión de lista y enumerate() para encontrar el índice del último elemento en una lista que cumple una condición dada. ¡Esta es una técnica útil que debes tener en tu caja de herramientas de Python!