python — argparse模块,及Pycharm传递参数给argparse

argparse 模块可以编写用户友好的命令行接口。
程序定义它需要的参数,然后 argparse 将弄清如何从 sys.argv 解析出那些参数。 argparse 模块还会自动生成帮助和使用手册,并在用户给程序传入无效参数时报出错误信息。
一、argparse用法

主要有三个步骤:
        创建 ArgumentParser() 对象
        调用 add_argument() 方法添加参数
        使用 parse_args() 解析添加的参数

示例demo如下:
    以深度学习中经常出项的的演示demo为例

# 导入包
    import argparse

# 创建解析器
    ap = argparse.ArgumentParser()
    # 添加位置参数(positional arguments)
    ap.add_argument("-i", "--input", required=True,
                    help="path to the input folder")
    ap.add_argument("-m", "--model", required=True,
                    help="path to the model file")
    args = vars(ap.parse_args())
    print(args)
    print(args["input"],args["model"])

用来创建参数的对象.

注意的是,怎么去使用.

parser.add_argument('config', help='test config file path')

1.最常见的代码中,把这些传入参数都以这个--开头,这个其实这个语法默认的就是非必须参数,然后呢,你可以通过在edit配置(我猜测 必选的参数只能配置一个,这个可选的可以任意多少个).

你如果不配置,你直接run就是用的它的default的值.

2不已这个--开头的,则默认为是必须传入的参数,这个就不能用required 因为他;本来就是必选的,所以这时候,最好加--则可以直接在后面 default 传入参数去run.

还有open-mmlab里面的demo样例,在终端上输指令跑的话是ok的.但是改了配置啥的之后,run.会报错,不是你的配置没配好.

results[key] = torch.stack(results[key], dim=0)
RuntimeError: stack expects a non-empty TensorList

而且这个runtimeError就算你try了,后面还有其他错误.

parse_args的使用:相关推荐

  1. parse函数 python_python的parse_args()函数

    一旦我们指定了所有参数,就可以从标准命令行输入流中解析参数了.为此,我们使用parse_args()函数. 现在,可以简单地检查输入是否已调用特定参数.在这里,我们检查args.add的长度,以检查是 ...

  2. Python中利用parse_args与namespace来简化函数传参

    python中parse_args以及namespace 声明:本笔记记录的是使用parse_args在函数内部进行传参,并非在命令行进行输入.所有操作均需先进行import argparse. 通过 ...

  3. python 命令行解析函数_python命令行解析之parse_known_args()函数和parse_args()使用区别介绍...

    在python中,命令行解析的很好用, 首先导入命令行解析模块 import argparse import sys 然后创建对象 parse=argparse.ArgumentParser() 然后 ...

  4. Python 讲堂 parse_args()详解

    本文是对下面链接博客的补充与修正,全部代码我已经跑过,都是没有错误的.                                                                 ...

  5. args = parser.parse_args()报错

    问题描述 args = parser.parse_args()报错 import argparseparser = argparse.ArgumentParser(prog='top', descri ...

  6. python遍历argparse的parse_args()

    python遍历argparse的parse_args()对象 由于我想把parse_args()对象的数据格式化后保存在log日志文件,于是我想要遍历解析器配置的参数. 简单通过for i in a ...

  7. python中argparse模块关于 parse_args() 函数详解(全)

    目录 前言 1. 函数讲解 2. 基本用法 3. 实战讲解 前言 原理:命令行解析使用argparse包 作用:命令行传参赋值 可用在机器学习深度学习 或者 脚本运行等 了解这个函数需要了解其背后的原 ...

  8. parse_args()详解

    1-引入模块 import argparse 2-建立解析对象 parser = argparse.ArgumentParser() 3-增加属性:给xx实例增加一个aa属性 # xx.add_arg ...

  9. parse_args()和parse_known_args()的用法和区别

    在使用python命令行解析包argparse的时候,遇到了parse_args()和parse_known_args()两种用法,遂查资料搞清楚两个函数的差别并记录. 1 parse_args() ...

最新文章

  1. C# 垃圾回收机制(转)
  2. 又一个高等级数据中心着火了!
  3. 什么是物联网的信息服务器,物联网介绍 | 5分钟看懂什么是IoT物联网
  4. 阿里云IoT Studio升级版新增解决方案引擎,大幅提升方案交付效率
  5. get请求可以传body吗_都9102年了,GET和POST的区别掌握了没有?
  6. 第四章 政策过程及其理论模型
  7. C语言函数的声明、定义、调用
  8. 【正点原子FPGA连载】第三十二章 MDIO接口读写测试实验-摘自【正点原子】领航者ZYNQ之FPGA开发指南_V2.0
  9. CSDN资源共享规范
  10. CSS:单行文本溢出省略号替代,多行文本溢出省略号替代
  11. Python 实现一个自动下载小说的简易爬虫
  12. iccid的PHP规则,中国联通(U)SIM卡ICCID命名规则
  13. 快速理解三角函数:积化和差、和差化积
  14. 2021执念斩长河年度总结
  15. 嵌入式 linux 屏 翻转,linux下如何把屏幕设置成竖屏
  16. 扒一扒那些叫欧拉的定理们(十一)——欧拉数论定理
  17. 【问答集锦】人工智能/机器学习技术在电商场景下的应用
  18. C语言——测试电脑大小端
  19. Paper:《BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding用于语言理解的深度双向Tr
  20. Android之获取地理位置

热门文章

  1. Python创建csv文件,追加数据,不留数据空白行
  2. rebar3 简单使用
  3. c语言万年历如何实现横向打印,用C语言如何编写“万年历”
  4. IT只忍者龟Photoshop简单人像的头发抠图过程
  5. 游戏开发团队项目经理的专访--- 徐丹
  6. python使用MQTT协议详解
  7. XERO 系列之 GST报税
  8. 【秒懂】byte的取值范围为什么是-128~127?
  9. js 获取 元素高度
  10. 百度低调入局百家号直播带货再续电商梦