首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在VSCODE中调试Python脚本,同时使用a解析从终端调用Python脚本

在VSCODE中调试Python脚本,同时使用a解析从终端调用Python脚本
EN

Stack Overflow用户
提问于 2022-01-16 15:06:33
回答 1查看 717关注 0票数 0

假设我有以下脚本:

代码语言:javascript
运行
复制
import argparse

parser = argparse.ArgumentParser()

parser.add_argument('-t','--text',
                help="Input a text")
args = parser.parse_args()

def test_function(x):
    y = x
    print(y)

if __name__ == '__main__':
    test_function(args.text)

我从控制台调用的

代码语言:javascript
运行
复制
python newtest.py -t hello

问:在Visual中,是否有一种方法可以从命令行执行代码(如上面所示),但同时在test_function中的test_function行设置一个断点,以便调试从命令行调用的脚本?

现在它只是被执行并且断点被忽略了,基本上它做的是而不是,停止在这里:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-27 19:55:07

你的问题没有完全得到答案,但我的网络搜索在我找到我想要的东西之前就把我带到了这里,那就是用参数调用脚本并使用vscode调试器。这并不是调试终端中调用的内容,而是在运行调试时设置调用的内容。如果你有很多不同的东西在你的文件夹里,那可能是一个麻烦,试图维护它们全部或类似的东西,但是.

如果您转到launch.json目录中的.vscode文件,您将得到调试信任。您可以在其中添加args的列表项。因此,我的文件如下所示,然后调用我正在调试的任何python文件加上-r asdf

代码语言:javascript
运行
复制
{
    // 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": [
        {
            "args": [
                "-r asdf"
            ],
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "justMyCode": true
        }
    ]
}

如果您有多个参数,您不能将它们放在同一个字符串中,它们应该是单独的、分开的元素。一开始并没有意识到这一点,但毕竟这是一个清单。所以拥有多个应该是这样的:

代码语言:javascript
运行
复制
...
    "args": [
        "-r asdf",
        "-m fdsa"
    ]
...
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70731308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档