zoukankan      html  css  js  c++  java
  • Python 中使用optparse进行参数解析

    使用过Linux/Unix的人都会知道,命令行下的很多命令都需要参数,在C语言中添加和解析参数比较繁琐。Python中提供了optparse模块可以非常方便地处理命令行参数。

    1  命令行参数的样子


    我们一般在使用命令行程序的时候,可能会看到大约这样的样子(这是我写的一个简单命令行帮助列表):
    Usage: run.py [options] args
    
    Options:
      --version             show program's version number and exit
      -h, --help            show this help message and exit
      -c CLIENT_NUM, --clients=CLIENT_NUM
                            number of clents
      -t TIME, --time=TIME  test time in seconds

    在C语言中,我们可能需要使用printf来打印所有的内容,但是请注意上面的内容不是手动打印的,而是optparse自动生成的。下面一点一点来解释这个过程。

    2 optparse简单使用过程


    当然,首先得导入模块:

    from optparse import OptionParser

    我们一般使用的是optparse的OptionParser类。

    实例化一个OptionParse类,在实例化时可以实现上面命令行帮助信息中的第一行:

    usage = "usage: %prog [options] args"
    parser = OptionParser(usage,version="%prog 0.1 ")

    简单解释一下。我们可以向OptionParser传入参数,上面传入的是usage和version。当然不传入参数也是可以的。常用参数有:

    usage:就是展示的第一行内容,默认是“%prog [options]”

    version:传入这个参数可以让帮助信息增加--version选项,用来显示定义的软件版本信息。

    description:描述这个程序。

    add_help_option:这个参数产生-h选项来显示帮助信息,默认是开启的。

    prog:可以看到上面使用了%prog,这个就是产生所执行的程序的程序名。(在我的例子里是run.py)

    然后,我们需要添加必要的选项信息。

    parser.add_option("-c", "--clients",dest="client_num",help="number of clents")

    使用add_option可以添加选项。具体使用方法见:https://docs.python.org/2/library/optparse.html#optparse.OptionParser.add_option

    这样我们就向程序添加了选项,有了选项我们就该根据选项进行相应的操作了。

    (options, args)=parser.parse_args()

    得到option和args后再根据值进行相应的操作。

    非常简单,非常好用。

  • 相关阅读:
    使用linux将一个服务器上的文件或者文件夹复制黏贴到另一个服务器上
    深度学习之常用linux命令总结
    python 操作MYSQL数据库
    MYSQL登录及常用命令
    mysql数据库可视化工具—Navicat Premium—安装与激活
    Mysql数据库的简单介绍与入门
    java 正则匹配int型
    js设置文本框只能输入数字
    Java数据抓取(一)
    Nodejs的多线程
  • 原文地址:https://www.cnblogs.com/jaletech/p/3661407.html
Copyright © 2011-2022 走看看