Python处理命令行参数模块optpars用法实例分析


Posted in Python onMay 31, 2018

本文实例讲述了Python处理命令行参数模块optpars用法。分享给大家供大家参考,具体如下:

optpars是python中用来处理命令行参数的模块,可以自动生成程序的帮助信息,功能强大,易于使用,可以方便的生成标准的,符合Unix/Posix 规范的命令行说明。

使用 add_option() 来加入选项,使用 parse_args() 来解析命令行。

add_option()中参数

第一个参数表示option的缩写,以单个中划线引导,例如-f、-d,只能用单个字母,可以使用大写;

第二个参数表示option的全拼,以两个中划线引导,例如--file、--Opencv_version;

第一第二个参数可以单独使用,也可以同时使用,但必须保证有其中一个;

从第三个参数开始是命名参数,是可选参数,常用的几个:

type=: 表示输入命令行参数的值的类型,默认为string,可以指定为string, int, choice, float,complex其中一种;
default=: 表示命令参数的默认值;
metavar=: 显示到帮助文档中用来提示用户输入期望的命令参数;
dest=:指定参数在options对象中成员的名称,如果没有指定dest参数,将用命令行参数名来对options对象的值进行存取。
help=:  显示在帮助文档中的信息;

解析命令行

(options, args) = parse.parse_args()

或在main(argv)函数里:

(options, args) = parser.parse_args(argv)

options,是一个对象(optpars.Values),保存有命令行参数值。通过命令行参数名,如 file,访问其对应的值: options.file ;
args,是一个由 positional arguments 组成的列表;

optparse使用

import sys
from optparse import OptionParser
parser = OptionParser()
parser.add_option('-f','--file',type=str,default='./image',help='file path of images',dest='file_path')
parser.add_option('--weights','-w',type=str,default='./weights_saved',help="file location of the trained network weights")
parser.add_option('--iterations','-i',type=int,default=10000,help='iteration time of CRNN Net')
parser.add_option('--gpu','-g',type=int,default=0,help="gpu id")
def main(argv):
  (options, args) = parser.parse_args()
  (options, args) = parser.parse_args(argv)  # both OK
  print 'file path of images: ' + options.file_path
  print "file location of the trained network weights: " + options.weights
  print 'iteration time of CRNN Net: ' + str(options.iterations)
  print 'gpu id: ' + str(options.gpu)
if __name__ == '__main__':
 main(sys.argv)

查看帮助文档:

python test.py -h

显示:

Usage: test.py [options]
Options:
  -h, --help            show this help message and exit
  -f FILE_PATH, --file=FILE_PATH
                        file path of images
  -w WEIGHTS, --weights=WEIGHTS
                        file location of the trained network weights
  -i ITERATIONS, --iterations=ITERATIONS
                        iteration time of CRNN Net
  -g GPU, --gpu=GPU     gpu id

输入命令行参数:

python test.py -f ../tensorflow/train_image -w ../tensorflow/weights -i 5000 -g 2

输出:

file path of images:  ../tensorflow/train_image
file location of the trained network weights:  ../tensorflow/weights
iteration time of CRNN Net:  5000
gpu id:  2

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
尝试用最短的Python代码来实现服务器和代理服务器
Jun 23 Python
python Flask 装饰器顺序问题解决
Aug 08 Python
python使用webdriver爬取微信公众号
Aug 31 Python
Python sklearn KFold 生成交叉验证数据集的方法
Dec 11 Python
python 与服务器的共享文件夹交互方法
Dec 27 Python
Python 经典算法100及解析(小结)
Sep 13 Python
python之生成多层json结构的实现
Feb 27 Python
使用python处理题库表格并转化为word形式的实现
Apr 14 Python
Python3 ID3决策树判断申请贷款是否成功的实现代码
May 21 Python
Python内置异常类型全面汇总
May 28 Python
解决Pytorch自定义层出现多Variable共享内存错误问题
Jun 28 Python
pytorch实现加载保存查看checkpoint文件
Jul 15 Python
python筛选出两个文件中重复行的方法
May 31 #Python
python删除文本中行数标签的方法
May 31 #Python
Python使用wget实现下载网络文件功能示例
May 31 #Python
Python使用progressbar模块实现的显示进度条功能
May 31 #Python
python调用Matplotlib绘制分布点并且添加标签
May 31 #Python
python批量修改文件编码格式的方法
May 31 #Python
Python用for循环实现九九乘法表
May 31 #Python
You might like
PHP中使用localhost连接Mysql不成功的解决方法
2014/08/20 PHP
PHP的Yii框架的基本使用示例
2015/08/21 PHP
Dom操作之兼容技巧分享
2011/09/20 Javascript
js自定义事件及事件交互原理概述(二)
2013/02/01 Javascript
JS操作图片(增,删,改) 例子
2013/04/17 Javascript
jquery中文乱码的多种解决方法
2013/06/21 Javascript
深入理解Javascript中的循环优化
2013/11/09 Javascript
Jquery中扩展方法extend使用技巧
2014/08/24 Javascript
JavaScript获取页面中超链接数量的方法
2015/11/09 Javascript
js实现图片无缝滚动特效
2020/03/19 Javascript
jquery获取所有选中的checkbox实现代码
2016/05/26 Javascript
React为 Vue 引入容器组件和展示组件的教程详解
2018/05/03 Javascript
vue本地打开build后生成的dist文件夹index.html问题
2019/09/04 Javascript
layui 关闭open弹出框 刷新table表格页面的方法
2019/09/16 Javascript
JavaScript实现密码强度实时验证
2020/03/18 Javascript
jenkins自动构建发布vue项目的方法步骤
2021/01/04 Vue.js
[42:20]Secret vs Liquid 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
django实现前后台交互实例
2017/08/07 Python
Python实现桶排序与快速排序算法结合应用示例
2017/11/22 Python
详解Python3中的迭代器和生成器及其区别
2018/10/09 Python
python模块hashlib(加密服务)知识点讲解
2019/11/25 Python
Python列表切片常用操作实例解析
2020/03/10 Python
Python响应对象text属性乱码解决方案
2020/03/31 Python
CSS3 圆角效果
2009/07/15 HTML / CSS
DVF官方网站:美国时装界尊尚品牌
2017/08/29 全球购物
美丽的珠宝配饰:SmallThings
2019/09/04 全球购物
策划助理岗位职责
2013/11/18 职场文书
大学生工作推荐信范文
2013/12/02 职场文书
协议书与合同的区别
2014/04/18 职场文书
党的群众路线教育实践活动通讯稿
2014/09/10 职场文书
四风问题民主生活会对照检查材料思想汇报
2014/09/27 职场文书
2014统计局民主生活会对照检查材料思想汇报
2014/10/02 职场文书
领导干部作风建设自查报告
2014/10/23 职场文书
导师鉴定意见
2015/06/05 职场文书
Java数组详细介绍及相关工具类
2022/04/14 Java/Android
Android存储中最基本的文件存储方式
2022/04/30 Java/Android