PyDev: ¿Cómo invocar un comando específico de depuración desde la consola (con puntos de interrupción)?
Supongamos que escribí una función, que quiero depurar.
PyDev ayuda a depurar mucho con sus funciones avanzadas, como puntos de interrupción.
Después de establecer los puntos de interrupción, una forma de depuración es escribir una invocación de la función endef main()
o solo en el cuerpo del módulo, y presionar el botón.
¿Es posible iniciar una sesión de depuración de la función junto con sus argumentos desde la consola? (Al igual que en RStudio o VBA ...)
Esta pregunta es un duplicado depydev: depuración en modo consola (interactivo)?
Actualización: Realmente no sé, cuál es la combinación mágica de clics, que hace posible la depuración interactiva.
Esto es lo que hago, que esno funciona (en Ubuntu 14.04 y Eclipse 4.4.I20140606-1215 con PyDev 3.6.0.2014062323, Python 3.4.0, IPython 1.2.1)
Primer intento:Primero, creo un nuevo proyecto PyDev:
Luego inserto un nuevo archivo .py con algo de código y creo algunos puntos de interrupción:
Luego hago clic derecho en algún lugar del código,Debug As...
->Python run
.
Y luego se abren 2 consolas, ninguna de ellas es IPython. La consola activa se llama[Debug console] proba.py
. Escribir comandos en esta consola no hace que la computadora los ejecute.
Hay otra consola disponible, llamada soloproba.py
. Esta consola es completamente interactiva, aunqueno es IPython.
Este es de hecho un depurador interactivo. Uno puede recorrer el código e inspeccionar variables. Lamentablemente, la actualización de las variables no es compatible; si ingreso un comandoa=10
La variable no se actualiza.
Esta vez, antes de iniciar la sesión de depuración, intentemos iniciar IPython. Después de Ctrl + Alt + Enter elijoConsole for currently active editor
:
Luego Python3 (porque esto es lo que necesito):
Después de eso tengo una consola IPython totalmente funcional.
Cuando ejecuto el archivo a través deexecfile
, desencadena un errorFailed to create input stream: Read timed out
:
Aunque parece que recorrer el código funciona, no puedo acceder a las variables desde la consola IPython, aunque es posible acceder a ellas desde la vista Variables: