Ich fange an, vscode für Python zu verwenden. Ich habe ein einfaches Testprogramm. Ich möchte es unter Debug ausführen und muss das Arbeitsverzeichnis für den Lauf festlegen.
Wie / wo mache ich das?
Ich fange an, vscode für Python zu verwenden. Ich habe ein einfaches Testprogramm. Ich möchte es unter Debug ausführen und muss das Arbeitsverzeichnis für den Lauf festlegen.
Wie / wo mache ich das?
Antworten:
Der Kommentar von @ SpeedCoder5 verdient eine Antwort.
Insbesondere können Sie ein dynamisches Arbeitsverzeichnis angeben. (dh in welchem Verzeichnis sich die aktuell geöffnete Python-Datei befindet), mit"cwd": "${fileDirname}"
Wenn Sie die Python: Current File (Integrated Terminal)
Option verwenden, wenn Sie Python ausführen, launch.json
sieht Ihre Datei möglicherweise wie die folgende aus.
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File (Integrated Terminal)",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"cwd": "${fileDirname}"
},
//... other settings, but I modified the "Current File" setting above ...
}
[Denken Sie daran, dass die launch.json
Datei die Ausführungs- / Debug-Einstellungen Ihres Visual Studio-Codeprojekts steuert] [1]; Meine launch.json
Datei wurde automatisch von VS Code im Verzeichnis meines aktuellen "Open Project" generiert. Ich habe die Datei nur manuell bearbeitet, um sie "cwd": "${fileDirname}"
wie oben gezeigt hinzuzufügen .
Denken Sie daran, dass die launch.json
Datei möglicherweise projektspezifisch oder verzeichnisspezifisch ist. Vergewissern Sie sich daher, dass Sie die richtige Datei bearbeiten launch.json
(siehe Kommentar).
Wenn Sie keine launch.json
Datei haben, versuchen Sie Folgendes :
Um eine Datei launch.json zu erstellen, öffnen Sie Ihren Projektordner in VS Code (Datei> Ordner öffnen) und wählen Sie dann das Symbol Zahnrad konfigurieren in der oberen Leiste der Debug-Ansicht. [1]: https://code.visualstudio.com/docs/editor/debugging#_launch-versus-attach-configurations
Sie müssen lediglich die cwd-Einstellung in der Datei launch.json wie folgt konfigurieren:
{
"name": "Python",
"type": "python",
"pythonPath":"python",
....
"cwd": "<Path to the directory>"
....
}
Weitere Informationen hierzu finden Sie auf der offiziellen VS Code Docs-Website .
"cwd": "${fileDirname}"
im aktuellen Verzeichnis der Open-Source-Datei
In einigen Fällen kann es auch nützlich sein, Folgendes PYTHONPATH
zusammen mit workspaceFolder
:
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"cwd": "${workspaceFolder}",
"env": {
"PYTHONPATH": "${cwd}"
}
}
Ich veröffentliche diese Beispielkonfiguration für Personen, die TypeScript auf Node.js verwenden
In meinem Projekt befinden sich die TypeScript-Dateien meines Node.js-Servers im Ordner Application_ts, und die kompilierten js-Dateien werden im Ordner Application generiert
Denn wenn wir unsere Anwendung im Debug-Modus ausführen oder normal starten, sollten wir vom Anwendungsordner aus starten, der die js-Dateien enthält. Führen Sie die folgende Konfiguration aus dem Stammordner aus, in dem meine application_ts ebenfalls vorhanden sind und einwandfrei funktionieren
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Debug TypeScript in Node.js",
"program": "${workspaceRoot}\\Application\\app.js",
"cwd": "${workspaceRoot}\\Application",
"protocol": "inspector",
"outFiles": [],
"sourceMaps": true
},
{
"type": "node",
"request": "attach",
"name": "Attach to Process",
"port": 5858,
"outFiles": [],
"sourceMaps": true
}
]
}
Sie können das aktuelle Arbeitsverzeichnis für das debuggte Programm mit dem cwd
Argument in einrichtenlaunch.json
So legen Sie das aktuelle Arbeitsverzeichnis auf die Datei fest, die Sie gerade ausführen:
Datei> Einstellungen> Einstellungen> Python> Data Science> In Datei ausführen
Danke brch: Python in VSCode: Setzt das Arbeitsverzeichnis jedes Mal auf den Pfad der Python-Datei