zoukankan      html  css  js  c++  java
  • python optparse模块的简单用法

     1 # coding = utf-8
     2 
     3 from optparse import OptionParser
     4 from optparse import OptionGroup
     5 
     6 usage = 'Usage: %prog [options] arg1 arg2 ...'
     7 
     8 parser = OptionParser(usage,version='%prog 1.0')
     9 #通过OptionParser类创建parser实例,初始参数usage中的%prog等同于os.path.basename(sys.argv[0]),即
    10 #你当前所运行的脚本的名字,version参数用来显示当前脚本的版本。
    11 
    12 '''
    13 添加参数,-f、--file是长短options,有一即可。
    14 
    15 action用来表示将option后面的值如何处理,比如:
    16 XXX.py -f test.txt
    17 经过parser.parse_args()处理后,则将test.txt这个值存储进-f所代表的一个对象,即定义-f中的dest
    18 即option.filename = 'test.txt'
    19 action的常用选项还有store_true,store_false等,这两个通常在布尔值的选项中使用。
    20 
    21 metavar仅在显示帮助中有用,如在显示帮助时会有:
    22 -f FILE, --filename=FILE    write output to FILE
    23 -m MODE, --mode=MODE  interaction mode: novice, intermediate, or expert
    24                         [default: intermediate]
    25 如果-f这一项没有metavr参数,则在上面会显示为-f FILENAME --filename=FILENAME,即会显示dest的值
    26 
    27 defalut是某一选项的默认值,当调用脚本时,参数没有指定值时,即采用default的默认值。
    28 '''
    29 
    30 parser.add_option('-f','--file',
    31                   action='store',dest='filename',
    32                   metavar='FILE',help='write output to FILE')
    33 
    34 parser.add_option('-m','--mode',
    35                   default = 'intermediate',
    36                   help='interaction mode:novice,intermediate,or expert [default:%default]')
    37 parser.add_option('-v','--verbose',
    38                   action='store_true',dest='verbose',default=True,
    39                   help='make lots of noise [default]')
    40 
    41 parser.add_option('-q','--quiet',
    42                   action='store_false',dest='verbose',
    43                   help="be vewwy quiet (I'm hunting wabbits)")
    44 
    45 group = OptionGroup(parser,'Dangerous Options',
    46                     'Caution: use these options at your own risk.'
    47                     'It is believed that some of them bite.')
    48 #调用OptionGroup类,定制以组显示的option
    49 
    50 group.add_option('-g',action='store_true',help='Group option.')
    51 #添加option
    52 parser.add_option_group(group)
    53 #将刚定制的groupoption加入parser中
    54 
    55 group = OptionGroup(parser,'Debug Options')
    56 group.add_option('-d','--debug',action='store_true',
    57                  help='Print debug information.')
    58 group.add_option('-s','--sql',action='store_true',
    59                  help='Print all SQL statements executed')
    60 group.add_option('-e',action='store_true',help='Print every action done')
    61 parser.add_option_group(group)
    62 
    63 (options,args) = parser.parse_args()
    64 #解析脚本输入的参数值,options是一个包含了option值的对象
    65 #args是一个位置参数的列表

    python.exe xxx.py --help显示结果如下:

    Usage: test_optparse.py [options] arg1 arg2 ...

    Options:
      --version             show program's version number and exit
      -h, --help            show this help message and exit
      -f FILE, --file=FILE  write output to FILE
      -m MODE, --mode=MODE  interaction mode:novice,intermediate,or expert
                            [default:intermediate]
      -v, --verbose         make lots of noise [default]
      -q, --quiet           be vewwy quiet (I'm hunting wabbits)

      Dangerous Options:
        Caution: use these options at your own risk.It is believed that some
        of them bite.

        -g                  Group option.

      Debug Options:
        -d, --debug         Print debug information.
        -s, --sql           Print all SQL statements executed
        -e                  Print every action done


  • 相关阅读:
    Knockout应用开发指南 第八章:简单应用举例(2)
    微软ASP.NET站点部署指南(7):生产环境部署
    Knockout应用开发指南 第七章:Mapping插件
    《Microsoft Sql server 2008 Internals》读书笔记第九章Plan Caching and Recompilation(6)
    《Microsoft Sql server 2008 Internals》读书笔记第九章Plan Caching and Recompilation(5)
    《Microsoft Sql server 2008 Internals》读书笔记第九章Plan Caching and Recompilation(3)
    《Microsoft Sql server 2008 Internals》读书笔记第九章Plan Caching and Recompilation(9)
    《Microsoft Sql server 2008 Internals》读书笔记第九章Plan Caching and Recompilation(8)
    Microsoft Visual Studio .NET 2003 引导程序插件下载地址(非官方)
    Vs2010在没有安装SQL Server 2005/2008 Express时如何连接MDF数据文件?
  • 原文地址:https://www.cnblogs.com/darkpig/p/5677153.html
Copyright © 2011-2022 走看看