我正在使用 Visual Studio 的 Python 工具(注意,不是 IronPython)。
我需要处理从命令行传递给模块的参数。我知道可以通过在代码窗口中右键单击并选择“以调试方式启动”来启动调试模式。但是这种方法从未提示我输入命令行参数,而且 len(sys.argv) 始终等于 1。
如何以调试模式启动我的模块并传递参数,以便 sys.argv 有多个成员?
我正在使用 Visual Studio 的 Python 工具(注意,不是 IronPython)。
我需要处理从命令行传递给模块的参数。我知道可以通过在代码窗口中右键单击并选择“以调试方式启动”来启动调试模式。但是这种方法从未提示我输入命令行参数,而且 len(sys.argv) 始终等于 1。
如何以调试模式启动我的模块并传递参数,以便 sys.argv 有多个成员?
步骤显示在此处链接的图像中:
{
"name": "Python: Terminal (integrated)",
"type": "python",
"request": "launch",
"stopOnEntry": true,
"pythonPath": "${config:python.pythonPath}",
"program": "${file}",
"cwd": "",
"console": "integratedTerminal",
"env": {},
"args": [
"input2.csv",
"output2.csv"
],
"envFile": "${workspaceFolder}/.env",
"debugOptions": [],
"internalConsoleOptions": "neverOpen"
}
在调试时,请确保选择该环境
我通过在脚本的第一行设置断点并在VS中打开“立即窗口”(您可以在其中在脚本的上下文中执行命令)来解决了这个问题。然后我运行
import sys
sys.argv += 'arg1 arg2 --arg3'.split()
您想从调试下拉菜单中选择“使用Python交互式执行项目”。其键盘快捷键为Shift+Alt+F5。这样做后,您将在屏幕底部打开一个名为Python Interactive的窗口,并且您将看到您的打印语句以及程序中任何输入提示。
但是,这并不允许您同时进入调试模式。它只能是其中之一。
1. 如果您正在使用Anaconda,则从Anaconda Navigator启动VSCode。
2. 然后从文件夹中打开您的Python文件。
3. 接着,进入调试选项并单击添加配置,然后将打开launch.json文件,在该文件中有一行"console": "integratedTerminal",请注释此行并添加"console":"none"和"args":["your command line arguments"],然后保存。
4. 调试或运行您的Python文件。请参阅下面的链接。如何在VSCode中添加命令行参数? https://code.visualstudio.com/docs/python/debugging
super
键(带有小窗口的符号);输入cmd
;打开cmd.exe
;进入您的项目,... :-P - LittleByBlue