En python, ¿es posible tener el código anterior sin generar una excepción?¿Es posible declarar una función sin argumentos pero luego pasar algunos argumentos a esa función sin aumentar la excepción?
def myfunc():
pass
# TypeError myfunc() takes no arguments (1 given)
myfunc('param')
Por lo general, en php en algunas circunstancias lanzo una función sin parámetros y luego recuperar los parámetros dentro de la función.
En la práctica, no quiero declarar argumentos en myfunc y luego pasarle algunos argumentos. La única solución que encontré es myfunc(*arg)
. ¿Hay algún otro método?
¿Por qué es 'myfunc (* arg)' no es suficiente? – interjay
Supongo que yuri todavía no (sabe) sobre * arg – Dana
La implementación necesita que myfunc sea una devolución de llamada pasada a otra función que intente llamarlo en una lista de comprensión pasando un argumento. Así que no tengo control sobre la implementación de devolución de llamada y el usuario no puede omitir intencionalmente el '* args' (en el código me ocupo de este evento) – yuri