方法一:使用 args
数组:
json
{
"version": "2.0.0",
"configurations": [
{
"name": "Adjust Table",
"type": "python",
"request": "launch",
"program": "${workspaceRoot}/adjust_table.py",
"justMyCode": false,
"args": ["--param1", "value1", "--param2", "value2"]
}
]
}
解释:
"args": ["--param1", "value1", "--param2", "value2"]
:args
是一个数组,其中的元素是传递给adjust_table.py
的命令行参数。在这个例子中,程序启动时将收到--param1 value1 --param2 value2
这样的参数列表。- 你可以根据需要修改这些参数,添加或删除元素,以满足程序的调试需求。
方法二:使用环境变量 env
:
json
{
"version": "2.0.0",
"configurations": [
{
"name": "Adjust Table",
"type": "python",
"request": "launch",
"program": "${workspaceRoot}/adjust_table.py",
"justMyCode": false,
"env": {
"PARAM1": "value1",
"PARAM2": "value2"
}
}
]
}
解释:
"env": { "PARAM1": "value1", "PARAM2": "value2" }
:env
是一个对象,允许你设置环境变量。在程序内部,可以通过os.environ.get("PARAM1")
和os.environ.get("PARAM2")
来获取这些环境变量的值。- 这种方式适用于将一些配置信息通过环境变量传递给程序,而不是作为命令行参数。
方法三:结合 args
和 env
:
json
{
"version": "2.0.0",
"configurations": [
{
"name": "Adjust Table",
"type": "python",
"request": "launch",
"program": "${workspaceRoot}/adjust_table.py",
"justMyCode": false,
"args": ["--param1", "${env:PARAM1}", "--param2", "${env:PARAM2}"],
"env": {
"PARAM1": "value1",
"PARAM2": "value2"
}
}
]
}
解释:
"args": ["--param1", "${env:PARAM1}", "--param2", "${env:PARAM2}"]
:- 这里结合了
args
和env
。${env:PARAM1}
表示从环境变量中获取PARAM1
的值作为参数传递给程序。 - 这允许你通过修改环境变量来改变传递给程序的参数,同时也可以在
args
中添加一些固定的参数。
- 这里结合了
使用说明:
- 将上述的任何一种配置添加到
.vscode/launch.json
文件中的configurations
数组中。 - 在程序
adjust_table.py
中,对于方法一,可以使用sys.argv
来获取命令行参数,例如:
python
import sys
if len(sys.argv) > 1:
print(sys.argv[1:])
对于方法二,使用 os.environ
来获取环境变量,例如:
python
import os
param1 = os.environ.get("PARAM1")
param2 = os.environ.get("PARAM2")
print(param1, param2)
对于方法三,既可以使用 sys.argv
也可以使用 os.environ
,根据配置中参数的传递方式来获取相应的信息。
这些方法可以根据你的具体需求灵活运用,例如,你可以根据不同的调试场景,方便地修改参数和环境变量的值,以满足不同的调试要求。