1 Python命令行参数(脚本神器)

系统 1415 0
            
               1
            
            
              #
            
            
              !/usr/bin/env python3.7 
            
            
               2
            
            
              #
            
            
               -*- coding:utf-8 -*-
            
            
               3
            
            
              #
            
            
               Author: Lancer  2019-09-02 10:07:21
            
            
               4
            
            
               5
            
            
              import
            
            
                sys,getopt

            
            
               6
            
            
               7
            
            
              def
            
            
                usage():

            
            
               8
            
            
              print
            
            (
            
              "
            
            
              usage  call
            
            
              "
            
            
              )

            
            
               9
            
            
              10
            
            
              def
            
            
               main():

            
            
              11
            
            
              try
            
            
              :

            
            
              12
            
                     opts, args = getopt.getopt(sys.argv[1:], 
            
              "
            
            
              ho:v
            
            
              "
            
            , [
            
              "
            
            
              help
            
            
              "
            
            , 
            
              "
            
            
              output=
            
            
              "
            
            
              ])

            
            
              13
            
            
              print
            
            (sys.argv[1
            
              :])

            
            
              14
            
            
              except
            
            
               getopt.GetoptError as err:

            
            
              15
            
            
              print
            
            (str(err))  
            
              #
            
            
               will print something like "option -a not recognized"
            
            
              16
            
            
                      usage()

            
            
              17
            
                     sys.exit(2
            
              )

            
            
              18
            
                 output =
            
               None

            
            
              19
            
                 verbose =
            
               False

            
            
              20
            
            
              for
            
             o, a 
            
              in
            
            
               opts:

            
            
              21
            
            
              if
            
             o == 
            
              "
            
            
              -v
            
            
              "
            
            
              :

            
            
              22
            
                         verbose =
            
               True

            
            
              23
            
            
              elif
            
             o 
            
              in
            
             (
            
              "
            
            
              -h
            
            
              "
            
            , 
            
              "
            
            
              --help
            
            
              "
            
            
              ):

            
            
              24
            
            
                          usage()

            
            
              25
            
            
                          sys.exit()

            
            
              26
            
            
              elif
            
             o 
            
              in
            
             (
            
              "
            
            
              -o
            
            
              "
            
            , 
            
              "
            
            
              --output
            
            
              "
            
            
              ):

            
            
              27
            
                         output =
            
               a

            
            
              28
            
            
              else
            
            
              :

            
            
              29
            
            
              assert
            
             False, 
            
              "
            
            
              unhandled option
            
            
              "
            
            
              30
            
            
              31
            
            
              if
            
            
              __name__
            
             == 
            
              "
            
            
              __main__
            
            
              "
            
            
              :

            
            
              32
            
                 main()
          

getopt.getopt 方法用于解析命令行参数列表,语法格式如下:

          
            getopt
            
              .
              
                getopt
                
                  (
                  
                    args
                    
                      ,
                      
                         options
                        
                          [,
                          
                             long_options
                            
                              ])
                            
                          
                        
                      
                    
                  
                
              
            
          
        

方法参数说明:

  • args : 要解析的命令行参数列表。

  • options  : 以字符串的格式定义, options  后的冒号  : 表示如果设置该选项,必须有附加的参数,否则就不附加参数。

  • long_options  : 以列表的格式定义, long_options  后的等号  = 表示该选项必须有附加的参数,不带冒号表示该选项不附加参数。

  • 该方法返回值由两个元素组成: 第一个是  (option, value)  元组的列表。 第二个是参数列表,包含那些没有  -  或  --  的参数。

 


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论