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} 岁。")
相关推荐
云惠科技(SEO)12 分钟前
泛目录站群技术架构演进观察:2025年PHP+Java混合方案实战笔记
java·人工智能·搜索引擎
叫我DPT15 分钟前
分享一个python启动文件脚本(django示例)
数据库·python·django
_玖-幽20 分钟前
大数据分析02 基础语法差异
python·数据分析·go
coder777721 分钟前
js逆向分享
javascript·爬虫·python·算法·安全
QQ_77813297428 分钟前
从文本到视频:基于扩散模型的AI生成系统全解析(附PyTorch实现)
人工智能·pytorch·python
牛马baby1 小时前
Springboot 自动装配原理是什么?SPI 原理又是什么?
java·spring boot·后端
明月看潮生1 小时前
青少年编程与数学 02-016 Python数据结构与算法 25课题、量子算法
python·算法·青少年编程·量子计算·编程与数学
水w1 小时前
【Python爬虫】详细入门指南
开发语言·爬虫·python·scrapy·beautifulsoup
weixin_445054721 小时前
力扣刷题-热题100题-第35题(c++、python)
c++·python·leetcode
小小深1 小时前
了解JVM
java·jvm