Sujeción de valores dentro de un rango en Python
Cuando se trabaja con datos numéricos, a menudo es necesario asegurarse de que los valores permanezcan dentro de un rango específico. Si bien las verificaciones condicionales explícitas son un método común, pueden volverse detalladas y difíciles de manejar. Afortunadamente, Python proporciona soluciones más concisas y elegantes para esta tarea.
Una forma de fijar valores es utilizando las funciones integradas max() y min(). Estas funciones toman múltiples argumentos y devuelven el valor mayor o menor, respectivamente. Al encadenar estas funciones, puede imponer un límite inferior y superior en un valor:
new_index = max(0, min(new_index, len(mylist)-1))
Esta expresión calcula new_index como el máximo de 0 y el mínimo de new_index y len(mylist)-1. Esto efectivamente sujeta new_index dentro de los límites de la lista.
Por ejemplo, si new_index es -1, se sujetará a 0, que es el límite inferior. Si new_index es 10 y len(mylist) es 5, se limitará a 4, que es el límite superior menos uno.
También puedes usar las funciones max() y min() con expresiones condicionales ternarias. para una compacidad aún mayor, pero la legibilidad puede verse afectada:
new_index = 0 if new_index Esta expresión utiliza el operador menor que (
Recuerde, se debe priorizar la claridad y la legibilidad sobre la brevedad extrema. Agregar un comentario conciso junto al código puede ayudar a otros a comprender la intención detrás de la lógica de sujeción:
# Clamp new_index within the bounds of the list
new_index = max(0, min(new_index, len(mylist)-1))
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3