Deseo recuperar las variables locales de Python de una función llamada. ¿Hay alguna manera de hacer esto? Me doy cuenta de que esto no es correcto para la mayoría de los programas, pero básicamente estoy creando un depurador. Por ejemplo:Obtener locales del espacio de nombres de llamadas en Python
def show_locals():
# put something in here that shows local_1.
local_1 = 123
show_locals() # I want this to show local_1.
¿Qué debo poner en el cuerpo de ? Si tengo que modificar la declaración de llamada, ¿cuál es la modificación mínima que puedo hacer?
Nota: esto debe funcionar cuando está en un módulo diferente a su llamador.
bonito, bien parecido. – Peter
Súper útil. Gracias. –
¡Yay! Encontré su solución después de encontrar problemas significativos de rendimiento con una solución alternativa: 'caller = inspect.stack() [1] [0]; myvars = caller.f_locals'. Tu camino es MUCHO más rápido. – TheGerm