Python命令行参数解析模块getopt使用实例


Posted in Python onApril 13, 2015

格式

getopt(args, options[, long_options])

1.args表示要解析的参数.
2.options表示脚本要识别的字符.字符之间用”:”分隔,而且必须要以”:”后结尾,例如”a:b:c:”.
3.long_options是可选的,如果指定的话,可以解析长选项.形式为字符串列表,如[‘foo=', ‘frob='].长选项要求形式为”?name=value”
4.该方法返回2个元素.第一个元素是列表对, 对中第一个值是带有”-“或者”?”的选项名,第二个值是选项的值.第二个元素是options减去第一个元素的后的值,即不能识别的值.

如果要求只能解析长选项的话,options必须为空.只要指定了参数名,就必须传入参数,不支持可有可无的参数.

短选项实例

import getopt
short_args = '-a 123 -b boy -c foo -d 2.3 unkown'.split()

print short_args
optlist, args = getopt.getopt(short_args, 'a:b:c:d:')

print optlist

print args

输出
['-a', '123', '-b', 'boy', '-c', 'foo', '-d', '2.3', 'unkown']

[('-a', '123'), ('-b', 'boy'), ('-c', 'foo'), ('-d', '2.3')]

['unkown']

长选项实例
import getopt
long_args = '--a=123 --b unkown'.split()

optlist, args = getopt.getopt(long_args, '', ['a=', 'b'])

print optlist

print args

输出
[('--a', '123'), ('--b', '')]

['unkown']

长短选项结合实例
import getopt
s = '--condition=foo --testing --output-file abc.def -x a1 unknown'

args = s.split()

optlist, args = getopt.getopt(args, 'x:', ['condition=', 'output-file=', 'testing'])

print optlist

print args

输出
[('--condition', 'foo'), ('--testing', ''), ('--output-file', 'abc.def'), ('-x', 'a1')]

['unknown']
Python 相关文章推荐
python文件比较示例分享
Jan 10 Python
python让图片按照exif信息里的创建时间进行排序的方法
Mar 16 Python
Python运算符重载用法实例
May 28 Python
python类的继承实例详解
Mar 30 Python
如何在python字符串中输入纯粹的{}
Aug 22 Python
python事件驱动event实现详解
Nov 21 Python
计算机二级python学习教程(1) 教大家如何学习python
May 16 Python
Python3 串口接收与发送16进制数据包的实例
Jun 12 Python
python try except返回异常的信息字符串代码实例
Aug 15 Python
PyQt5中QSpinBox计数器的实现
Jan 18 Python
python基础之while循环语句的使用
Apr 20 Python
使用Pytorch实现two-head(多输出)模型的操作
May 28 Python
Python中文件操作简明介绍
Apr 13 #Python
Python单元测试框架unittest简明使用实例
Apr 13 #Python
进一步了解Python中的XML 工具
Apr 13 #Python
Python中的模块和包概念介绍
Apr 13 #Python
Python多线程编程简单介绍
Apr 13 #Python
Python中的面向对象编程详解(下)
Apr 13 #Python
简单介绍利用TK在Python下进行GUI编程的教程
Apr 13 #Python
You might like
php下用GD生成生成缩略图的两个选择和区别
2007/04/17 PHP
php中动态变量用法实例
2015/06/10 PHP
php 的反射详解及示例代码
2016/08/25 PHP
PHP标准类(stdclass)用法示例
2016/09/28 PHP
Extjs入门之动态加载树代码
2010/04/09 Javascript
jQuery中$.fn的用法示例介绍
2013/11/05 Javascript
JQuery以JSON方式提交数据到服务端示例代码
2014/05/05 Javascript
教你如何自定义百度分享插件以及bshare分享插件的分享按钮
2014/06/20 Javascript
在JavaScript中正确引用bind方法的应用
2015/05/11 Javascript
简介JavaScript中strike()方法的使用
2015/06/08 Javascript
JS模式之简单的订阅者和发布者模式完整实例
2015/06/30 Javascript
HTML5实现留言和回复页面样式
2015/07/22 Javascript
详解JavaScript语言的基本语法要求
2015/11/20 Javascript
js实现文本框输入文字个数限制代码
2015/12/25 Javascript
Three.js如何实现雾化效果示例代码
2017/09/27 Javascript
基于layui内置模块(element常用元素的操作)
2019/09/20 Javascript
layui 弹出层值回传解决方式
2019/11/14 Javascript
python 自动提交和抓取网页
2009/07/13 Python
Python使用CMD模块更优雅的运行脚本
2015/05/11 Python
go和python变量赋值遇到的一个问题
2017/08/31 Python
使用python实现链表操作
2018/01/26 Python
python2.x实现人民币转大写人民币
2018/06/20 Python
Django之模型层多表操作的实现
2019/01/08 Python
python给微信好友定时推送消息的示例
2019/02/20 Python
Django框架会话技术实例分析【Cookie与Session】
2019/05/24 Python
Python用字典构建多级菜单功能
2019/07/11 Python
python如何通过twisted搭建socket服务
2020/02/03 Python
python 装饰器功能与用法案例详解
2020/03/06 Python
Python爬取梨视频的示例
2021/01/29 Python
法国和欧洲海边和滑雪度假:Pierre & Vacances
2017/01/04 全球购物
挖掘机司机岗位职责
2014/02/12 职场文书
动漫设计与制作专业推荐信
2014/07/07 职场文书
2015年技术工作总结范文
2015/04/20 职场文书
2015年库房工作总结
2015/04/30 职场文书
Python Flask搭建yolov3目标检测系统详解流程
2021/11/07 Python
通过feDisplacementMap和feImage实现水波特效
2022/04/24 HTML / CSS