optparse 模块
一、optparse是专门用来在命令行添加选项的一个模块。支持python2.3及以上版本,从2.7版本之后,python不再更新该模块,2.7之后的版本推荐使用argparse模块。
二、optparse使用一种更加声明式的命令行解析风格:你创建一个OptionParser实例,填充选项,并解析命令行。optparse允许用户指定选项,使用传统的GNU/POSIX语法,此外它还会自动生成使用和帮助信息。
三、模块的基本使用
1、写一个py文件
#coding=utf-8
import optparse
# 创建一个解析器,括号里可以传一个参数,该参数是使用信息
parser = optparse.OptionParser()
# 添加选项,添加的选项可以在你使用命令行启动py文件时,添加参数传到文件里进行运算
parser.add_option("-f", "--file", action='store',dest="filename",
help="write report to FILE", metavar="FILE") (options, args) = parser.parse_args()
print options.filename
2、命令行使用:
D:\code>python test.py --file=file.py # 打印结果为file.py
3、也可以直接在文件中定义
#coding=utf-8
import optparse
# 创建一个解析器,括号里可以传一个参数,该参数是使用信息
parser = optparse.OptionParser()
# 添加选项,添加的选项可以在你使用命令行启动py文件时,添加参数传到文件里进行运算
parser.add_option("-f", "--file", action='store',dest="filename",
help="write report to FILE", metavar="FILE")
fakeArgs = ['-f','file.py'] (options, args) = parser.parse_args(fakeArgs )
print options.filename
4、add_option(short_option,long_option,[**params])参数说明,short_option,long_option,分别代表短选项字符串和长选项字符串,params表示如下可用参数:
1)action:在解析选项时执行的动作,可设置为以下值:
- 'store'——默认值就是这个,表示把命令行参数保存到options对象中
- 'store_const'——选项不带任何参数,但是当遇到选项时,就会保存const关键字参数指定的常量值
- 'stone_true' ——解析选项时,保存的时BOOL值True
- 'store_false'——解析选项时,保存的是BOOL值False
- 'append'——选项有一个参数,解析时被附加到一个列表
- 'count'——选项不带任何参数,但是保存一个计数器,遇到参数,计数器的值就会增加
- 'callback'——遇到选项时,调用callback关键字指定的一个回调函数
- 'help'——解析选项时打印一条帮助消息
2)callback:指定遇到选项时候调用的回调函数 callback(option,opt_str,value,parse,*rags,**kwarg)
3)choice:指定所有可能的选项值的字符串列表,当一个选项只有一组有限的值时候使用
4)const :通过store_const动作保存的常量值
5)default 默认值None##dest 设置用于保存解析期间选项值的属性名称
6)help:这个特定选项的帮助文档
7)metavar:指定打印帮助文本时使用的选项参数的名称
8)nargs:为需要参数的动作指定选项参数的数量
9)type:指定选项的类型
optparse 模块的更多相关文章
- 最简单的optparse模块的用法
optparse模块是python自带的模块,可用于处理命令行 #!/usr/bin/env python # -*- coding: utf-8 -*- """ __a ...
- python OptParse模块的用法详解
OptParse模块的简单介绍 Python 有两个内建的模块用于处理命令行参数: 一个是 getopt只能简单处理 命令行参数: 另一个是 optparse,它功能强大,而且易于使用,可以方便地生成 ...
- optparse模块解析命令行参数的说明及优化
一.关于解析命令行参数的方法 关于“解析命令行参数”的方法我们一般都会用到sys.argv跟optparse模块.关于sys.argv,网上有一篇非常优秀的博客已经介绍的很详细了,大家可以去这里参考: ...
- 利用optparse模块解析指令的字符串
optparse模块主要用来为脚本传递命令参数,采用预先定义好的选项来解析命令行参数. 使用方法: 生成OptionParser对象,为对象添加option,用parse_args方法解析文字 具体实 ...
- optparse模块
optparse模块主要是用来对参数的记录,相对来说比较灵活, 例子代码如下: #!/usr/bin/env python from optparse import OptionParser usag ...
- Python中optparse模块使用浅析
转载:http://www.jb51.net/article/59296.htm 最近遇到一个问题,是指定参数来运行某个特定的进程,这很类似Linux中一些命令的参数了,比如ls -a,为什么加上-a ...
- python中optparse模块用法
optparse模块主要用来为脚本传递命令参数,采用预先定义好的选项来解析命令行参数. 首先需要引入optparser模块,然后执行初始化,实例化一个OptionParser对象(可以带参,也可以不带 ...
- python模块----optparse模块、argparse模块 (命令行解析模块)
简介 optparse module---自版本3.2以来已弃用:optparse模块已弃用,将不再进一步开发:将继续使用argparse模块进行开发.optparse使用一种更具声明性的命令行解析方 ...
- Python中的optparse模块的使用
optparse模块主要用来为脚本传递命令参数,采用预先定义好的选项来解析命令行参数. 实例化一个 OptionParser 对象(可以带参,也可以不带参数),带参的话会把参数变量的内容作为帮助信息输 ...
- python optparse模块
为了从更快的的使用这个模块,我们会省略一些东西,开始吧. 1. 加载模块 from optparse import OptionParser 2. 实例化OptionParse,可以理解为表明usea ...
随机推荐
- 你所不知道的html5与html中的那些事(四)——文本标签
文章简介: 关于html5相信大家早已经耳熟能详,但是他真正的意义在具体的开发中会有什么作用呢?相对于html,他又有怎样的新的定义与新理念在里面呢?为什么一些专家认为html5完全完成后 ...
- 【242】◀▶IEW-Unit07
Unit 7 Education: Schools I.句子基本结构在写作中的运用 主谓宾 主系表 主谓 主谓宾宾 主谓宾补 1.主语: 1)位于句首 2)名词 例句:应该建立相关法律 Laws an ...
- 0005_Linux下的SSH连接操作
1.启动SSH服务:service sshd start 2.开机自动启动SSH:chkconfig sshd on 3.获取Linux的ip地址:ifconfig 4.连接Linux的SSH:打开x ...
- Attribute meta-data#android.support.VERSION@value value=(25.4.0) from AndroidManifest.xml:25:13-35 is also present at AndroidManifest.xml:28:13-35 value=(26.1.0).
Android Studio 编译项目的时候报错 Merging Errors: Error: Attribute meta-data#android.support.VERSION@value va ...
- UVaLive 7637 Balanced String (构造)
题意:给定一个括号的序列,原先的序列是碰到左括号加1,碰到右括号减1,然后把序列打乱,让你找出字典序最小的一个答案. 析:直接从第一个括号判断就好了,优先判断左括号,如果不行就加右括号. 代码如下: ...
- 2014-9-13 NOIP模拟赛
NOIP2014模拟赛 ——lwher 题目名 环上的游戏 舞蹈课 数位和乘积 源文件 cycle.cpp/c/pas dancingLessons.pas/cpp digit.cpp.cpp/c/p ...
- P4769 [NOI2018]冒泡排序(dp)
传送门 日常膜拜shadowice巨巨的题解 //minamoto #include<bits/stdc++.h> #define R register #define ll long l ...
- Java 基础类库
与用户互动 1. 运行java程序的参数 public static void main(Stirng[] args) 这个方法是有JVM调用,因此用public static修饰,并且没有返回值,同 ...
- shell学习(9)- du和df区别及详解
清明小长假来加班,总得干点啥吧,今天就说说du 和df的区别. 1.区别 du,disk usage,是通过搜索文件来计算每个文件的大小然后累加,du能看到的文件只是一些当前存在的,没有删除的.他计算 ...
- SpringBoot---核心---日志配置