Python 中 getopt 方法使用

介绍

​ python中 getopt 模块,该模块是专门用来处理命令行参数的,例如下面这个命令就传入了 -s, -d , -m 参数:

python channel_builder.py -s /Users/graypn/ -d /Users/graypn/Documents -m 7

参数也分长格式和短格式

  • 短格式:-s
  • 长格式:--source

使用

  1. 首先要导入包:

    import sys
    import getopt
    
  2. 下面是一段标准模板代码:

    srcDir = None
    dstDir = None
    platform = "Phone"
    majorVersion = None
    subVersion = None
    channels = None
    try:    
      opts, args = getopt.getopt(sys.argv[1:], "hs:d:m:v:p:c:",                            
    ["help", "src=", "dst=", "major=", "version=", "platform=", "channels="])
    except getopt.GetoptError:    
      showUsage()
    for op, value in opts:    
      if op in ("-h", "--help"):       
         showUsage()    
      elif op in ("-s", "--src"):        
        srcDir = value    
      elif op in ("-d", "--dst"):       
        dstDir = value    
      elif op in ("-m", "--major"):        
        majorVersion = value    
      elif op in ("-v", "--version"):        
        subVersion = value    
      elif op in ("-p", "--platform"):        
        platform = value    
      elif op in ("-c", "--channels"):        
        channels = value
    if srcDir is None or dstDir is None or majorVersion is None or subVersion is None or channels is None:    
        showUsage()
    

    这个 opts 是一个字典类型,getopt.getopt() 函数第一个传入参,第二个传段参数名,第三个是长参数名,上面基本上是固定的格式,所以用到的时候直接复制就好。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • PLEASE READ THE FOLLOWING APPLE DEVELOPER PROGRAM LICENSE...
    念念不忘的阅读 14,605评论 5 6
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,264评论 19 139
  • 今天老公要抢阿里云的免费套餐,但是到了快十点了去抢,根本抢不到。最近我也在看selenuim自动化测试的视频,于是...
    就流逝的丹青色阅读 3,496评论 0 2
  • 许久,没听到侠客的传说了。韦小宝之后,武功便失传了。不见了“一见误终身”的杨过,不见了“绝情谷底”的小龙女。武侠片...
    拾字猫阅读 3,418评论 0 3
  • 今天你说我能当作家,我记住了,一定好好努力,作家的路,走着。
    幻美心阅读 1,310评论 0 0

友情链接更多精彩内容