parse_args的使用:
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的使用:相关推荐
- parse函数 python_python的parse_args()函数
一旦我们指定了所有参数,就可以从标准命令行输入流中解析参数了.为此,我们使用parse_args()函数. 现在,可以简单地检查输入是否已调用特定参数.在这里,我们检查args.add的长度,以检查是 ...
- Python中利用parse_args与namespace来简化函数传参
python中parse_args以及namespace 声明:本笔记记录的是使用parse_args在函数内部进行传参,并非在命令行进行输入.所有操作均需先进行import argparse. 通过 ...
- python 命令行解析函数_python命令行解析之parse_known_args()函数和parse_args()使用区别介绍...
在python中,命令行解析的很好用, 首先导入命令行解析模块 import argparse import sys 然后创建对象 parse=argparse.ArgumentParser() 然后 ...
- Python 讲堂 parse_args()详解
本文是对下面链接博客的补充与修正,全部代码我已经跑过,都是没有错误的. ...
- args = parser.parse_args()报错
问题描述 args = parser.parse_args()报错 import argparseparser = argparse.ArgumentParser(prog='top', descri ...
- python遍历argparse的parse_args()
python遍历argparse的parse_args()对象 由于我想把parse_args()对象的数据格式化后保存在log日志文件,于是我想要遍历解析器配置的参数. 简单通过for i in a ...
- python中argparse模块关于 parse_args() 函数详解(全)
目录 前言 1. 函数讲解 2. 基本用法 3. 实战讲解 前言 原理:命令行解析使用argparse包 作用:命令行传参赋值 可用在机器学习深度学习 或者 脚本运行等 了解这个函数需要了解其背后的原 ...
- parse_args()详解
1-引入模块 import argparse 2-建立解析对象 parser = argparse.ArgumentParser() 3-增加属性:给xx实例增加一个aa属性 # xx.add_arg ...
- parse_args()和parse_known_args()的用法和区别
在使用python命令行解析包argparse的时候,遇到了parse_args()和parse_known_args()两种用法,遂查资料搞清楚两个函数的差别并记录. 1 parse_args() ...
最新文章
- C# 垃圾回收机制(转)
- 又一个高等级数据中心着火了!
- 什么是物联网的信息服务器,物联网介绍 | 5分钟看懂什么是IoT物联网
- 阿里云IoT Studio升级版新增解决方案引擎,大幅提升方案交付效率
- get请求可以传body吗_都9102年了,GET和POST的区别掌握了没有?
- 第四章 政策过程及其理论模型
- C语言函数的声明、定义、调用
- 【正点原子FPGA连载】第三十二章 MDIO接口读写测试实验-摘自【正点原子】领航者ZYNQ之FPGA开发指南_V2.0
- CSDN资源共享规范
- CSS:单行文本溢出省略号替代,多行文本溢出省略号替代
- Python 实现一个自动下载小说的简易爬虫
- iccid的PHP规则,中国联通(U)SIM卡ICCID命名规则
- 快速理解三角函数:积化和差、和差化积
- 2021执念斩长河年度总结
- 嵌入式 linux 屏 翻转,linux下如何把屏幕设置成竖屏
- 扒一扒那些叫欧拉的定理们(十一)——欧拉数论定理
- 【问答集锦】人工智能/机器学习技术在电商场景下的应用
- C语言——测试电脑大小端
- Paper:《BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding用于语言理解的深度双向Tr
- Android之获取地理位置