¿Cómo configurar el directorio de trabajo para depurar un programa Python en VS Code?
¿Cómo ejecuto un archivo Python con el depurador y especifico el directorio de trabajo para la ejecución?
El comentario de @ SpeedCoder5 merece ser una respuesta.
En launch.json
, especifique un directorio de trabajo dinámico (es decir, el directorio donde se encuentra el archivo Python actualmente abierto) usando:
"cwd": "${fileDirname}"
Esto aprovecha la función de "referencia de variables" en VS Code y la variable predefinida fileDirname
.
Tenga en cuenta que, como dicen los comentarios, es posible que también deba agregar la purpose
opción :
"purpose": ["debug-in-terminal"]
Es posible que se requiera "Propósito" si se usa el botón de reproducción en la parte superior derecha de la ventana, en lugar de F5"Ejecutar y depurar" en la barra lateral.
Si está utilizando la Python: Current File (Integrated Terminal)
opción cuando ejecuta Python, su launch.json
archivo podría verse como el mío, a continuación ( más información sobre launch.json
los archivos aquí ).
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File (Integrated Terminal)",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"cwd": "${fileDirname}",
"purpose":["debug-in-terminal"]
},
//... other settings, but I modified the "Current File" setting above ...
}
Recuerde que el launch.json
archivo controla la configuración de ejecución/depuración de su proyecto de código de Visual Studio ; mi launch.json
archivo fue generado automáticamente por VS Code, en el directorio de mi "Proyecto Abierto" actual. Acabo de editar el archivo manualmente para agregarlo "cwd": "${fileDirname}"
como se muestra arriba.
Recuerde que el launch.json
archivo puede ser específico de su proyecto o específico de su directorio, así que confirme que está editando el archivo correcto launch.json
(ver comentario)
Si no tienes un launch.json
archivo, prueba esto :
Para crear un archivo launch.json, abra la carpeta de su proyecto en VS Code (Archivo > Abrir carpeta) y luego seleccione el ícono de ajustes Configurar en la barra superior de la vista Depurar.
Según el comentario de @kbro, es posible que se le solicite que cree un launch.json
archivo haciendo clic en el botón Depurar:
Cuando hice clic en el botón Depurar en mi panel de navegación, decía "Para personalizar Ejecutar y Depurar, cree un archivo launch.json". Al hacer clic en "crear..." se abrió un cuadro de diálogo que preguntaba qué idioma estaba depurando . En mi caso seleccioné Python
Configure el cwd
ajuste de launch.json
la siguiente manera:
{
"name": "Python",
"type": "python",
"pythonPath": "python",
...
"cwd": "<Path to the directory>"
...
}
En algunos casos, también puede resultar útil configurar PYTHONPATH
junto con workspaceFolder
:
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"cwd": "${workspaceFolder}",
"env": {
"PYTHONPATH": "${cwd}"
}
}
Esta configuración me ayuda: (soy una persona de Windows)
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"cwd": "${workspaceFolder}\\app\\js", // set directory here
"program": "${workspaceFolder}\\app\\js\\server.js", // set start js here
}