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实现简单的可逆加密程序实例
Mar 05 Python
python如何通过实例方法名字调用方法
Mar 21 Python
对Python 两大环境管理神器 pyenv 和 virtualenv详解
Dec 31 Python
Python爬虫实现爬取百度百科词条功能实例
Apr 05 Python
python实现坦克大战游戏 附详细注释
Mar 27 Python
如何更改 pandas dataframe 中两列的位置
Dec 27 Python
python读取与处理netcdf数据方式
Feb 14 Python
python 实现任务管理清单案例
Apr 25 Python
浅谈keras中的后端backend及其相关函数(K.prod,K.cast)
Jun 29 Python
keras的ImageDataGenerator和flow()的用法说明
Jul 03 Python
Python3爬虫关于代理池的维护详解
Jul 30 Python
简单且有用的Python数据分析和机器学习代码
Jul 02 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
dede全站URL静态化改造[070414更正]
2007/04/17 PHP
QueryPath PHP 中的jQuery
2010/04/11 PHP
php生成验证码,缩略图及水印图的类分享
2016/04/07 PHP
jQuery的一些特性和用法整理小结
2010/01/13 Javascript
如何将一个String和多个String值进行比较思路分析
2013/04/22 Javascript
JS中Date日期函数中的参数使用介绍
2014/01/02 Javascript
TypeScript 学习笔记之基本类型
2015/06/19 Javascript
JavaScript数据结构学习之数组、栈与队列
2017/05/02 Javascript
Vue不能检测到Object/Array更新的情况的解决
2018/06/26 Javascript
微信小程序分享功能onShareAppMessage(options)用法分析
2019/04/24 Javascript
Quasar Input:type="number" 去掉上下小箭头 实现加减按钮样式功能
2020/04/09 Javascript
[52:57]2014 DOTA2国际邀请赛中国区预选赛 LGD-CDEC VS HGT
2014/05/21 DOTA
python使用MySQLdb访问mysql数据库的方法
2015/08/03 Python
python批量提取word内信息
2015/08/09 Python
Python实现计算两个时间之间相差天数的方法
2017/05/10 Python
matplotlib在python上绘制3D散点图实例详解
2017/12/09 Python
Ubuntu下Python2与Python3的共存问题
2018/10/31 Python
PyQt5显示GIF图片的方法
2019/06/17 Python
基于python实现监听Rabbitmq系统日志代码示例
2020/11/28 Python
Python实现石头剪刀布游戏
2021/01/20 Python
css3动画效果抖动解决方法
2018/09/03 HTML / CSS
美国复古街头服饰精品店:Need Supply Co.
2017/02/22 全球购物
澳大利亚领先的男装零售连锁店:Lowes
2020/08/07 全球购物
劳资员岗位职责
2013/11/11 职场文书
大家检讨书5000字
2014/02/03 职场文书
中药专业毕业自荐书范文
2014/02/08 职场文书
大学生党员自我评价范文
2014/04/09 职场文书
伦敦奥运会口号
2014/06/13 职场文书
土地租赁意向书
2014/07/30 职场文书
党的群众路线教育实践活动个人对照检查剖析材料
2014/09/23 职场文书
违反学校规则制度检讨书
2015/01/01 职场文书
会计主管岗位职责
2015/04/02 职场文书
浅谈:电影《孔子》观后感(范文)
2019/10/14 职场文书
《学会生存》读后感3篇
2019/12/09 职场文书
Python利用folium实现地图可视化
2021/05/23 Python
Win11安装受阻怎么办? Windows11安装问题与解决方案汇总
2021/11/21 数码科技