当前位置: 首页 > 知识库问答 >
问题:

VS Code调试python脚本配置忽略args属性

陆子航
2023-03-14

我正在尝试调试我编写的需要命令行参数的python3脚本,但没有成功。我找到了VSCode:如何在搜索stackoverflow时调试带参数的Python脚本,它指出属性args应该设置为参数列表。然而,当我运行我创建的调试配置以调试./scripts下的脚本时,我会返回argparse错误<code>,需要以下参数:database、media_url、images

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Populate Database Script Debug",
            "type": "python",
            "request": "launch",
            "program": "${workspaceFolder}/scripts/populate_sqlite.py",
            "console": "integratedTerminal",
            "args": ["db.sqlite3", "../tarot_juicer/static/img", "~/slipsnip/automation/tarot/out"],
            "cwd": "${workspaceFolder}/scripts/"
        }
    ]
}

关于用vscode调试python的同一主题,我还注意到当我的populate_sqlite时。py脚本尝试读取文件数据。csv存在于与脚本相同的目录中,我得到<code>FileNotFoundError:[Errno 2]文件数据。csv不存在:'数据。csv‘但是,如果在运行调试配置之前,在终端中导航到脚本目录,那么问题就解决了,尽管我仍然有这个问题的主题问题,为什么忽略args?

如果有人可以解释如何解决我的参数在调试执行时未传递给脚本的问题,那将不胜感激。如果有人也能引导我朝着正确的方向前进,我如何将cwd中的文件存在而不必CD到脚本目录中,那也将不胜感激。谢谢。

共有1个答案

亢雅懿
2023-03-14

它似乎已经纠正了自己,在重新启动后回到了项目中。可能需要重新启动vscode,问题已经解决,现在正在传递参数。

 类似资料:
  • 在最近的vscode版本中,python扩展现在使用debugpy作为默认的Python调试器,取代了旧的ptvsd。 我需要在一个软件程序中调试一个python脚本,该程序适用于python 3.2,而不适用于较新的版本。不幸的是,debugpy只适用于python 有没有办法在vscode python扩展中使用另一个调试器,或者选择使用哪个调试器?换句话说,是否可以调试python

  • 我有一个用TypeScript编写的应用程序,它使用语句。我按照这里的说明在VSCode中启用调试。VSCode build命令正在创建输出。js和。将文件映射到tsc。但是,当我尝试调试时,会出现以下错误: 值得注意的是,类型的导入是从js中删除的,而函数的导入失败了。 应用程序。ts app.js(由VSCode编译) firebase应用程序。ts tsconfig。json 发射json:

  • 问题内容: Project Euler 和其他编码竞赛通常有最多的运行时间,或者人们吹嘘他们的特定解决方案的运行速度。使用Python时,有时这些方法有些繁琐-即向中添加计时代码__main__。 分析Python程序运行多长时间的好方法是什么? 问题答案: 最简单和最快的方式找到所有的时间是怎么回事。 在浏览器中绘制饼图。最大的一块是问题功能。很简单的。

  • 我正在使用Swashback为webapi2项目生成swagger documentation\UI。我们的模型与一些遗留接口共享,因此我想忽略模型上的几个属性。我不能使用JsonIgnore属性,因为遗留接口还需要序列化为JSON,所以我不想全局忽略属性,只是在Swashback配置中。 我在这里找到了这样做的方法: https://github.com/domaindrivendev/Swas

  • 我有一个基于Micronaut的网络应用程序,我在认证方面遇到了一些问题。这个问题特别与浏览器正在经历的变化有关,其中SameSite默认为Lax,如果您使用SameSite:none,那么cookie必须是安全的。我正在使用所有最新的稳定版本,例如Micronaut2.0.1。 Chrome给了我以下例外: set-cookie:JWT=EYJHBGCIOIJUB2..U5ODYXNZA2MX0

  • 问题内容: 我想用我的主要Java项目及其所有依赖项创建一个jar文件。所以我在pom文件中创建了以下插件定义: 所以我执行,将所有的依赖复制到而不是复制上,效果很好。有任何想法吗? 问题答案: 正常:您配置了名为的特殊执行,但是,直接在命令行上调用目标会创建默认执行,该默认执行与您配置的执行不同。因此,不会考虑您的配置。 在Maven中,可以在2个地方配置插件:用于所有执行(在级别使用)或用于每