zoukankan      html  css  js  c++  java
  • Python getopt 模块

    Python getopt 模块

      getopt模块,是配合sys.argv使用的一个扩展。他可以接收终端的参数。格式扩展为“-n” 或 “--n”两种类型,下面是具体解释。

    使用

    improt getopt
    import sys
    
    # 例一
    opts,args = getopt.getopt(sys.argv[1:], "ho:", ["help", "output="])
    
    # 例二
    opts,args = getopt.getopt(sys.argv[1:], "-h-o", ["help", "output"])

    解释

    语法格式为 getopt.getopt(sys.argv[1:],...),

    getopt.getopt 为固定语法格式。

    sys.argv[1:]  不把默认文件作为传入参数。

    "ho:"/"-h-o":传入参数终端格式为“-n”,代码可简写为"nn",也可全写"-n-n","n:"带个":"符号表示,后面还要传一个值(不然会出错)。

    ["nnn","nnn="]:传入参数终端格式为“--nnn”,“nnn=”这个带“=”符号的好使,后面还要传一个值 比如 “ --nnn value”(不然会出错)。

    分别有两个传入变量:opts,args : 

    opts:表示传入的参数,已list传入,参数与value,没有设置value默认为"", 没有字符。

    args:表示传入错误的参数,多出的一些错误格式参数会被这个args已list格式传入。


    #
    #  python3 test2.py -v --filename filename
    #
    
    
    import getopt
    import sys
    
    opts,args = getopt.getopt(sys.argv[1:],'-h-f:-v',['help','filename=','version'])
    print(opts)
    for opt_name,opt_value in opts:
        if opt_name in ('-h','--help'):
            print("[*] Help info")
            sys.exit()
        if opt_name in ('-v','--version'):
            print("[*] Version is 0.01 ")
            sys.exit()
        if opt_name in ('-f','--filename'):
            fileName = opt_value
            print("[*] Filename is ",fileName)
            # do something
            sys.exit()
    案例
  • 相关阅读:
    文本检测和识别 代码结构梳理
    UnicodeDecodeError: 'utf-8' codec can't decode byte
    GPU 显存释放
    DCM 图片查看
    hive SQL 字母大小写转换
    vim常用命令之多行注释和多行删除
    js 模拟call、apply、bind实现
    CommonJS、AMD、CMD和ES6模块化区别
    js setTimeout setInterval 第三个参数说明
    js instanceof 实现原理
  • 原文地址:https://www.cnblogs.com/xiangsikai/p/11102917.html
Copyright © 2011-2022 走看看