es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo depurar un módulo de Python con VSCode

Estoy tratando de observar variables en un módulo que estoy construyendo usando VSCode.
Intenté agregar dos configuraciones en launch.json: módulo y archivo actual. Pero ninguno hace precisamente lo que estoy tratando de hacer. En mi flujo de trabajo tengo un módulo que instalo con pip install, y cuando lo estoy ampliando, escribo pequeñas funciones que llaman al módulo; que cuando el módulo está funcionando, convierto en pruebas para pytest.

Me gustaría tener una configuración de depuración que me permita iniciar el módulo desde estos scripts externos, al mismo tiempo que pongo puntos de interrupción y observo variables dentro del módulo. Ninguna de las configuraciones a continuación ayuda a hacer eso. ¿Alguien tiene experiencia en esto? Gracias


    {
        "name": "Python: Archivo Actual",
        "type": "python",
        "request": "launch",
        "program": "${file}",
        "console": "integratedTerminal"
    },
    {
        "name": "Python: Módulo",
        "type": "python",
        "request": "launch",
        "module": "mimodulo"
    }
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que necesitas una configuración de inicio más personalizada para lograr la funcionalidad deseada. Una forma de hacer esto sería crear una nueva configuración de inicio en tu launch.json específicamente para tus scripts externos. En esta nueva configuración, puedes establecer el campo "program" como el script externo que utilizas para probar tu módulo, y establecer el campo "module" como el nombre de tu módulo.

    Por ejemplo:

    {
        "name": "Python: Depuración de Script Externo",
        "type": "python",
        "request": "launch",
        "program": "${workspaceFolder}/ruta/a/script/externo.py",
        "console": "integratedTerminal",
        "module": "mimodulo"
    }
    

    Esta configuración te permitirá iniciar tu script externo en modo de depuración, al mismo tiempo que te permitirá establecer puntos de interrupción y ver variables dentro de tu módulo.

    Nota: Asegúrate de especificar la ruta correcta a tu script externo en el campo "program".

Comments are closed.