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中input与raw_input 之间的比较
Aug 20 Python
python 平衡二叉树实现代码示例
Jul 07 Python
pygame游戏之旅 添加游戏暂停功能
Nov 21 Python
python+selenium实现自动抢票功能实例代码
Nov 23 Python
python版本五子棋的实现代码
Dec 11 Python
python实现控制台打印的方法
Jan 12 Python
python3实现钉钉消息推送的方法示例
Mar 14 Python
Python实现的插入排序,冒泡排序,快速排序,选择排序算法示例
May 04 Python
详解Selenium+PhantomJS+python简单实现爬虫的功能
Jul 14 Python
python lambda表达式(匿名函数)写法解析
Sep 16 Python
pycharm无法导入本地模块的解决方式
Feb 12 Python
Python自动化之批量处理工作簿和工作表
Jun 03 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
PHPMailer邮件发送的实现代码
2013/05/04 PHP
php metaphone()函数的定义和用法
2016/05/15 PHP
Laravel创建数据库表结构的例子
2019/10/09 PHP
广告代码静态化js通用函数
2007/05/09 Javascript
JavaScript 异步调用框架 (Part 3 - 代码实现)
2009/08/04 Javascript
入门基础学习 ExtJS笔记(一)
2010/11/11 Javascript
js 页面关闭前的出现提示的实现代码
2011/05/25 Javascript
jquery中通过过滤器获取表单元素的实现代码
2011/07/05 Javascript
js+xml生成级联下拉框代码
2012/07/24 Javascript
JavaScript strike方法入门实例(给字符串加上删除线)
2014/10/17 Javascript
JavaScript 学习笔记之操作符(续)
2015/01/14 Javascript
jQuery内容过滤选择器用法分析
2015/02/10 Javascript
jquery实现无限分级横向导航菜单的方法
2015/03/12 Javascript
jQuery添加删除DOM元素方法详解
2016/01/18 Javascript
jQuery图片旋转插件jQueryRotate.js用法实例(附demo下载)
2016/01/21 Javascript
多种方式实现js图片预览
2016/12/12 Javascript
vue2.0中vue-cli实现全选、单选计算总价格的实例代码
2017/07/18 Javascript
Angular使用Md5加密的解决方法
2017/09/16 Javascript
Bootstrap一款超好用的前端框架
2017/09/25 Javascript
vue实现弹幕功能
2019/10/25 Javascript
在 Vue 中编写 SVG 图标组件的方法
2020/02/24 Javascript
浅析TypeScript 命名空间
2020/03/19 Javascript
Python常见文件操作的函数示例代码
2011/11/15 Python
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
2015/10/18 Python
Python读取Json字典写入Excel表格的方法
2018/01/03 Python
Python正则表达式和元字符详解
2018/11/29 Python
Python判断变量名是否合法的方法示例
2019/01/28 Python
FFT快速傅里叶变换的python实现过程解析
2019/10/21 Python
Python变量及数据类型用法原理汇总
2020/08/06 Python
CSS3 渐变(Gradients)之CSS3 线性渐变
2016/07/08 HTML / CSS
美国男士内衣品牌:Tommy John
2017/12/22 全球购物
中专毕业个人的自荐信格式
2013/09/21 职场文书
对外汉语专业大学生职业生涯规划范文
2014/09/13 职场文书
委托公证书格式
2015/01/26 职场文书
2015年机关后勤工作总结
2015/05/26 职场文书
怎样写好工作计划
2019/04/10 职场文书