python vscode带参数调试

添加调试配置文件

或者打开命令面板输入debug: add configuration

选择带参数的python文件

可以在launch文件中

json 复制代码
{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        
        {
            "name": "Python 调试程序: 包含参数的当前文件",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "args": ["Alice","27"],
        },
        {
            "name": "Python 调试程序: 当前文件",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        },
    ]
}

参数说明

  • type:标识要使用的调试器类型
    对于 Python 代码,将此设置保留为 python
  • request:指定开始调试的模式

    常见的调试模式有以下两种:

  • launch :在 program 中指定的文件上启动调试器

  • attach :将调试器附加到已经运行的进程,在远程调试中会使用到

  • program:提供 python 程序的入口模块(启动文件)的绝对路径,还可以依赖工作空间根目录的相对路径( ${workspaceFolder}

    值 ${file} 通常在默认配置中使用,使用编辑器中当前活动的文件。

  • module:提供指定要调试的模块名称的功能

    类似于在命令行运行时的 -m 参数。

  • python:指向用于调试的 Python 解释器的完整路径

    如果未指定,此设置默认为为您的工作区选择的解释器,这相当于使用值 ${command:python.interpreterPath} 。

    要使用不同的解释器,请在调试配置的 python 属性中指定其路径。

    或者,可以使用在每个平台上定义的自定义环境变量来包含要使用的 Python 解释器的完整路径,以便不需要其他文件夹路径。

  • 如果需要将参数传递给 Python 解释器 ,可以使用 pythonArgs 属性.

    pythonArgs:向 Python 解释器传递参数

    使用语法 "pythonArgs": ["", "",...] 指定要传递给 Python 解释器的参数。

  • args:指定要传递给 Python 程序 的参数

    由空格分隔的参数字符串的每个元素都应包含在引号内,例如:

  • console:指定在不修改 redirectOutput 的默认值的情况下如何显示程序输出

    具体有以下三种选择:

    "internalConsole":VS Code 调试控制台。如果 redirectOutput 设置为 False,则不显示任何输出

    "integratedTerminal" (default) :VS Code 集成终端。如果 redirectOutput 设置为 True,输出也会显示在调试控制台中

    "externalTerminal":单独的控制台窗口。如果 redirectOutput 设置为 True,输出也会显示在调试控制台中

  • purpose:对 "运行" 按钮进行配置

    将 purpose 选项设置为 debug-test ,定义在 VS Code 中调试测试时应使用该配置。

    但是,将该选项设置为 debug-in-terminal 定义了仅在访问编辑器右上角的 "运行 Python 文件" 按钮时才应使用该配置(无论该按钮提供的是 "运行 Python 文件" 还是 "调试 Python 文件" 选项)。

  • cwd:指定调试器的当前工作目录

    这是代码中使用的任何相对路径的基本文件夹。如果省略,则默认为 ${workspaceFolder} (在 VS Code 中打开的文件夹)

  • redirectOutput:重定向输出

    当设置为 true (internalConsole 的默认值)时,使调试器将程序的所有输出打印到 VS Code 调试输出窗口中。

    如果设置为 false (integratedTerminal 和 externalTerminal 的默认值),程序输出不会显示在调试器输出窗口中。

    使用 "console": "integratedTerminal" 或 "console": "externalTerminal" 时通常会禁用此选项,因为无需在调试控制台中复制输出。

  • justMyCode:仅限调试用户编写的代码

    当省略或设置为 true (默认值)时,仅限调试用户编写的代码。设置为 false 还可以启用标准库函数的调试。

  • env:设置除系统环境变量之外的可选环境变量

    为调试器进程设置除调试器始终继承的系统环境变量之外的可选环境变量。这些变量的值必须以字符串形式输入。

  • envFile:包含环境变量定义的文件的可选路径

我的程序

python 复制代码
if "__name__==__main__":
    if len(sys.argv)<3:
        print("no enough parameter")
        sys.exit(1) # 非零退出码
    name = sys.argv[1]
    age = sys.argv[2]
    
    try:
        age=int(age)
    except ValueError:
        print("age is number")
        sys.exit(1)
        # 使用参数  
    print(f"你好, {name}!")  
    print(f"{name} 的年龄是 {age} 岁。")
相关推荐
cnxy1881 天前
围棋对弈Python程序开发完整指南:步骤4 - 提子逻辑和劫争规则实现
开发语言·python·机器学习
TheSumSt1 天前
Python丨课程笔记Part3:语法进阶部分(控制结构与基础数据结构)
数据结构·笔记·python
.鸣1 天前
set和map
java·学习
ha_lydms1 天前
5、Spark函数_s/t
java·大数据·python·spark·数据处理·maxcompute·spark 函数
电商API&Tina1 天前
跨境电商 API 对接指南:亚马逊 + 速卖通接口调用全流程
大数据·服务器·数据库·python·算法·json·图搜索算法
Yyyyy123jsjs1 天前
外汇Tick数据交易时段详解与Python实战分析
人工智能·python·区块链
黄河滴滴1 天前
java系统变卡变慢的原因是什么?从oom的角度分析
java·开发语言
侠客行03171 天前
Mybatis二级缓存实现详解
java·mybatis·源码阅读
老华带你飞1 天前
农产品销售管理|基于java + vue农产品销售管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
默默前行的虫虫1 天前
nicegui地图总结
网络·python