码迷,mamicode.com
首页 > 编程语言 > 详细

python命令行参数模块argparse

时间:2018-01-09 10:21:20      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:names   命令   pe文件   解析   patch   实例   odi   integer   ddr   

argparse

说明

  • 处理可选参数与位置参数
  • handles both optional and positional arguments
  • 产生标准化的帮助信息
  • produces highly informative usage messages
  • 支持调度子分器的解析器
  • supports parsers that dispatch to sub-parsers

Example code

    # 初始化一个实例
    parser = argparse.ArgumentParser(
        description=‘sum the integers at the command line‘)

    
    # 添加位置参数, 类型为int    
    parser.add_argument(
        ‘integers‘, metavar=‘int‘, nargs=‘+‘, type=int,
        help=‘an integer to be summed‘)

    
    # 添加可选参数,默认为标准输出,类型为FileType文件类    
    parser.add_argument(
        ‘--log‘, default=sys.stdout, type=argparse.FileType(‘w‘),
        help=‘the file where the sum should be written‘)

    
    # 解析    
    args = parser.parse_args()
    # Namespace(count=‘50‘, echo=‘good‘, host=‘172.168.100.1‘)

    
    args.log.write(‘%s‘ % sum(args.integers))
    args.log.close()


Example code

#coding:utf8


import argparse


class Args(object):


    def __init__(self):
        parser = argparse.ArgumentParser(
            description="A test network port tool"
        )
        parser.add_argument(
            "echo",
            help="echo info."
        )
        parser.add_argument(
            "-H", "--host",
            help="ipaddr or domain addr."
        )
        parser.add_argument(
            "-c", "--count",
            help="connect counts"
        )
        args = parser.parse_args()
        self.args = args


    def cc(self):
        print self.args
        print "args host: ", self.args.host
        print "args count: " ,self.args.count


if __name__ == "__main__":
    a = Args()
    a.cc()

Result

?  test git:(master) ? python argpar.py good -H 172.168.100.1 -c 50
Namespace(count=‘50‘, echo=‘good‘, host=‘172.168.100.1‘)
args host:  172.168.100.1
args count:  50

python命令行参数模块argparse

标签:names   命令   pe文件   解析   patch   实例   odi   integer   ddr   

原文地址:http://blog.51cto.com/cwtea/2058931

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!