zoukankan      html  css  js  c++  java
  • 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:指定选项的类型

        

     
  • 相关阅读:
    22天学习java基础笔记之day08
    22天学习java基础笔记之day07
    22天学习java基础笔记之day06
    22天学习java基础笔记之day05
    架构师_设计模式_行为型_迭代器
    架构师_设计模式_行为型_命令模式
    架构师_设计模式_行为型_责任链模式
    架构师_设计模式_行为型_模板方法
    架构师_设计模式_结构型_装饰器模式
    架构师_设计模式_结构型_桥接模式
  • 原文地址:https://www.cnblogs.com/value-code/p/9033241.html
Copyright © 2011-2022 走看看