处理命令行参数

 1 #-*-coding:utf-8-*-
__author__ = 007
__date__ = 16 / 1 / 19 from optparse import OptionParser # usage 定义的是使用方法
# %prog 表示脚本本身
# version 定义的是脚本名字和版本号
options = OptionParser(usage= "usage: %prog [options] arg1 arg2",version="%prog 1.2") # add_option()方法定义命令行参数
# -u,--user 表示一个是短选项 一个是长选项
# dest="user" 将该用户输入的参数保存到变量user中,可以通过options.user方式来获取该值
# type=str 表示这个参数的类型必须是str字符型,如果是其他类型那么将强制转换为str(可能会报错)
# metavar="user" 当用户查看帮助信息,如果metavar没有设值,那么显示的帮助信息的参数后面默认带上dest所定义的变量名
# help="Enter User Name" 显示的帮助提示信息
# default=True 表示如果参数后面没有跟值,那么将默认为变量default的值
options.add_option("-u","--user",dest="user",action="store",type=str,metavar="user",help="Enter User Name!")
options.add_option("-f","--file",dest="filename",help="write report to FILE",metavar="FILE") # action有三种类型:
# action="store" 默认类型,可以忽略不写.用户必须给出一个明确的参数值,该类型定义了将实际参数值保存到dest指定变量中
# action="store_true" 用户不需给出参数值,该类型定义了将布尔值true保存到dest指定的变量中
# action="store_false" 用户不需给出参数值,该类型定义了将布尔值false保存到dest指定的变量中
options.add_option("-v",help="Version!")
options.set_defaults(v=2.0) #也可以这样设置默认值 #parse_args()解析程序的命令行,返回两个值
#opts:它是一个对象(optpars.Values),保存命令行参数值.只要知道命令行参数名,如user,就可以访问其对应的值:opts.user
#args:它是一个由positional arguments组成的列表
(opts,args) = options.parse_args()

python模块—optparse的更多相关文章

  1. python 模块 optparse

    optparse,是一个能够让程式设计人员轻松设计出简单明了.易于使用.符合标准的Unix命令列程式的Python模块.生成使用和帮助信息. 下面是一个简单的示例: import optparse p ...

  2. python模块----optparse模块、argparse模块 (命令行解析模块)

    简介 optparse module---自版本3.2以来已弃用:optparse模块已弃用,将不再进一步开发:将继续使用argparse模块进行开发.optparse使用一种更具声明性的命令行解析方 ...

  3. python—模块optparse的用法

    1.什么是optparse: 在工作中我们经常要制定运行脚本的一些参数,因为有些东西是随着我么需求要改变的,所以在为们写程序的时候就一定不能把写死,这样我们就要设置参数 optparse用于处理命令行 ...

  4. python模块大全

    python模块大全2018年01月25日 13:38:55 mcj1314bb 阅读数:3049 pymatgen multidict yarl regex gvar tifffile jupyte ...

  5. [转]Python 模块收集

    Python 模块收集 转自:http://kuanghy.github.io/2017/04/04/python-modules Python | Apr 4, 2017 | python 工具 a ...

  6. getpass模块 ---- optparse

    getpass模块,不回显 常用方法 import getpass password=getpass.getpass('input your password: ').strip() 其他用法 use ...

  7. Python - 模块(一)

    目录 Python - 模块(一) 模块的引用方式 常用模块 random(随机模块) os模块 sys 序列化模块 hashlib subprocess optparse struct Python ...

  8. 使用C/C++写Python模块

    最近看开源项目时学习了一下用C/C++写python模块,顺便把学习进行一下总结,废话少说直接开始: 环境:windows.python2.78.VS2010或MingW 1 创建VC工程 (1) 打 ...

  9. Python模块之configpraser

    Python模块之configpraser   一. configpraser简介 用于处理特定格式的文件,其本质还是利用open来操作文件. 配置文件的格式: 使用"[]"内包含 ...

随机推荐

  1. Android Service 系统服务

    android sdk 提供很多公用的服务,也就是系统服务,开发者可以通过Activity类的getSystemService方法获取指定的服务.系统服务包含音频服务.视频服务窗口服务等.本篇主要讲T ...

  2. Oracle Dataguard三种保护模式概述(转)

    Oracle的DataGuard技术有三种实现模式,分别是max performance.max availability.max protection这三种模式. 以下是来自Oracle文档的摘要信 ...

  3. ARC、MRC混编

    Xcode5之后,新建iOS工程,默认都是ARC模式,但是有时候我们的项目中需要用到一些第三方框架,我们下载下来却发现是非ARC的,这时候我们需要进行ARC和MRC混编. 第一种方式: Edit-&g ...

  4. c# 读取IntPtr 中的数据

    c++的写法是这样的:LRESULT CPictureQueryDlg::OnQueryPicNty(WPARAM wp, LPARAM lp){EnableWindow(TRUE); BYTE *p ...

  5. css样式规则的简要总结

    css与文档关联起来发挥作用. css文件中是各种样式规则,由选择器和声名块构成.声明块由多条声明组成.选择器是声明要作用的对象,声明是对具体规则的描述. 声明由属性和值组成,值或是属性的错误都会使该 ...

  6. 诡异的_DEBUG宏

    学习VLD1.0代码,发现Release版本的代码_DEBUG宏是已定义的,查找工程配置确只有NDEBUG宏的定义,不见_DEBUG的踪影. 好吧,最后发现是由于工程Code Generation选项 ...

  7. juce中的timer

    juce中timer总体说还是比较好用的,使用时只需继承timer类, 重写callback然后调用start就可以了,juce的timer比较特别,自己通过线程实现,starttimer的时候会创建 ...

  8. eclipse中使用Lombok

    1.下载Lombok.jar http://projectlombok.googlecode.com/files/lombok.jar 2.运行Lombok.jar: java -jar  D:\00 ...

  9. java接口的理解

    接口的最主要的作用是达到统一访问,就是在创建对象的时候用接口创建,[接口名] [对象名]=new [实现接口的类],这样你像用哪个类的对象就可以new哪个对象了,不需要改原来的代码,就和你的USB接口 ...

  10. C语言malloc和free实现原理

    以下是一段简单的C代码,malloc和free到底做了什么? int main() { char* p = (char*)malloc(32); free(p); return 0; } malloc ...