使用optionParse解析命令行参数分以下几个步骤:

  1. 创建parser实例
  2. 使用add_option添加我们要处理的命令行参数
  3. 得到解析sys.argv后的options对象,查看用户的输入

代码展示

  from optparse import OptionParser

  parser = OptionParser(...)

  parser.add_option(.....)

参数介绍

  • OptionParser不要求一定要传递参数

    OptionParser(usage="%prog",version="%prog 1.0",description="hello")
    #%prog 在这里会自动替换为程序名字
    #usage 可以打印用法
    #version 在使用%prog --version的时候输出版本信息
    #description 描述信息
  • 使用add_option添加命令行参数
    #action  指示optparser解析参数时候该如何处理。默认是'store',表示将命令行参数值保存options    对象里 。
action的值有:store,store_true,store_false,store_const,append,count,callback.
#type 默认是“string",也可以是"int","float"等
#dest 如果没有指定dest参数,将用命令行参数名来对options对象的值进行存取。
#store store可以为store_true和store_false两种形式。用于处理命令行参数后面不带值的情况。如-v,-q等命令行参数。
#default 设置默认值
#help 指定帮助文档
#metavar 提示用户期望参数
  • 最后调用parse_args()解析命令行形参
(options, args) = parser.parse_args()
可以传递一个参数列表给parse_args(),否则,默认使用命令行参数(sysargv[1:])。
parse_args()返回两个值:
options, 这是一个对象(optpars.Values),保存有命令行参数值。只要知道命令行参数名,如file,就可以访问其对应的值:options.file。
args,一个由positional arguments组成的列表。
  • 参考链接:http://www.tuicool.com/articles/rUvIbi

OptionParser命令参数介绍及使用的更多相关文章

  1. Linux编程 14 文件权限(用户列表passwd,用户控制shadow,useradd模板与useradd命令参数介绍)

    一. 概述 linux安全系统的核心是用户账户. 创建用户时会分配用户ID(UID). UID是唯一的,但在登录系统时不是用UID,而是用登录名.在讲文件权限之之前,先了解下linux是怎样处理用户账 ...

  2. Hadoop(三) HADOOP常用命令参数介绍

    -help 功能:输出这个命令参数手册 -ls                  功能:显示目录信息 示例: hadoop fs -ls hdfs://hadoop-server01:9000/ 备注 ...

  3. vmstat命令参数介绍

    vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况.这个命令是我查看Linux/Unix最 ...

  4. Windows下使用mklink命令参数介绍

    Windows下创建符号链接使用命令mklink常用参数有 /D /J,两者有比较明显的区别 区别1:创建/D 创建目录符号链接(即目录快捷方式)而不是文件符号链接(默认为文件符号链接),可以使用相对 ...

  5. Monkey命令参数介绍

    1) 参数: -p   参数-p用于约束限制,用此参数指定一个或多个包(Package,即App).指定   包之后,Monkey将只允许系统启动指定的APP.如果不指定包,Monkey将允许系统启动 ...

  6. BCDBOOT命令参数介绍

    BCDboot 命令行选项 更新时间: 2013年10月 应用到: Windows 8, Windows 8.1, Windows Server 2012, Windows Server 2012 R ...

  7. ansible命令参数介绍

    -m:要执行的模块,默认为command -a:模块的参数 -u:ssh连接的用户名,默认用root,ansible.cfg中可以配置 -k:提示输入ssh登录密码.当使用密码验证的时候用 -s:su ...

  8. ubuntu apt 命令参数(转)

    apt-get是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索.安装.升级.卸载软件或操作系统. apt-get update 在修改/etc/apt/sou ...

  9. [Linux命令]curl命令参数详解——转载

    linux curl是通过url语法在命令行下上传或下载文件的工具软件,它支持http,https,ftp,ftps,telnet等多种协议,常被用来抓取网页和监控Web服务器状态.curl命令参数介 ...

随机推荐

  1. String()与toString的区别

    1..toString()可以将所有的的数据都转换为字符串,但是要排除null 和 undefined 代码示例: var a = null.toString()--报错 var b = underf ...

  2. 使用ssh config配置文件来管理ssh连接

    我本人其实及其烦使用配置文件这种东西,有时候看到巨大又复杂的配置文件,甚至复杂过代码的时候,总感觉设计配置文件的人有些本末倒置. 但是ssh这个配置文件真的非常简单好用,让我稍微体验了一次配置文件使用 ...

  3. mysql学习笔记四 —— AB复制

    要点:ab复制 mysql集群架构流程: ABB(主从复制)-->MHA(实现mysql高可用.读写分离.脚本控制vip飘逸)-->haproxy(对slave集群实现分发,负载均衡)-- ...

  4. 学习笔记之csrf

    CBV 添加 csrf 第一种: 指定方法方面添加 装饰器 @memethod_decorator(xxx) 第二种 全部添加: 注意 在类名前: @method_decorator(xxx,name ...

  5. Leapin' Lizards HDU - 2732 (恶心的建图。。)

    这道题其实不难...就是建图恶心了点....emm... 题意: 多源多汇 + 拆边 青蛙跳柱子, 每根柱子都有一定的承载能力, 青蛙跳上去之后柱子的承载能力就会减一,跳到边界就能活 跳不到就over ...

  6. BZOJ 3164: [Heoi2013]Eden的博弈问题

    3164: [Heoi2013]Eden的博弈问题 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 134  Solved: 98[Submit][St ...

  7. NOI 笔试题库(我背不住的部分)

    吐槽 为什么C++选手要会编译Pascall啊!为什么Emacs选手要会使用Vim啊! Linux 中为文件改名使用的命令是:mv 在Linux 中删除当前目录下的test 目录的命令是:rm -r ...

  8. [poj2528]Mayor's posters

    题目描述 The citizens of Bytetown, AB, could not stand that the candidates in the mayoral election campa ...

  9. POJ 1459 Power Network / HIT 1228 Power Network / UVAlive 2760 Power Network / ZOJ 1734 Power Network / FZU 1161 (网络流,最大流)

    POJ 1459 Power Network / HIT 1228 Power Network / UVAlive 2760 Power Network / ZOJ 1734 Power Networ ...

  10. jsp关闭或刷新浏览器(解决浏览器不兼容),请求后台onbeforeunload、onunload

    jsp关闭或刷新浏览器(解决浏览器不兼容),请求后台  onbeforeunload.onunload 1.看代码: function test(e) { var json = "退出,清理 ...