Estoy usando Python para mi ejemplo, pero mi pregunta se refiere a los lenguajes de programación en general.Uso del retorno en sentencias largas if-elseif-else (Python)
def some_function(eggs):
if eggs == 1:
do_something_1()
elif eggs == 2:
do_something_2()
elif eggs == 3:
do_something_3()
else:
do_error()
return
do_something_4()
do_something_5()
do_something_6()
(Esto es sólo un ejemplo. Mis funciones no serán llamados do_something_x
.)
¿Podría poner un retorno en el que se le parezca esto una mala práctica de programación? ¿Sería una mejor idea de poner
do_something_4()
do_something_5()
do_something_6()
en cada una de las IF/Elifs?
O incluso 'funs.get (eggs, do_error)()' para manejar el caso donde 'eggs' no está en' funs'. –
Al validar los argumentos, ¿quiere decir 'si huevos! = 1 y huevos! = 2 y huevos! = 3'? Porque eso no es muy simple si tengo 100 opciones para el valor de los huevos. –
Si usa el modismo que sugerí, mire el comentario de Andrew, o use 'if eggs not in funs: raise ValueError (" Número inválido de huevos ")' –