Contents
python代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
#encoding=utf-8 import argparse def parse_args(): # 创建一个parser对象 parser = argparse.ArgumentParser(description='parser demo') # str类型的参数(必填)(不需要加-标志) parser.add_argument('path', nargs='+') # nargs 为+是表示可以有1-n个参数,为*时表示可以有0-n个参数 # 选择类型的参数 parser.add_argument('--net', dest='demo_net', help='Network to use [vgg16 res101]', choices=['vgg16', 'res101'], default='res101') #如果有参数,则执行命令 parser.add_argument('--save', '-s', action = 'store_true', help = 'save') # int类型的参数(必须填写) parser.add_argument('--ver', '-v', required = True, type = int, help = 'version') args = parser.parse_args() return args if __name__ == '__main__': args = parse_args() # model pathd demonet = args.demo_net path = args.path print(demonet) print(path) if args.save: print("Ture") else: print("False") |
运行
1 2 |
python parse.py --help |
输出
1 2 3 4 5 6 7 8 9 10 11 12 13 |
usage: parse.py [-h] [--net {vgg16,res101}] [--save] --ver VER path parser demo positional arguments: path optional arguments: -h, --help show this help message and exit --net {vgg16,res101} Network to use [vgg16 res101] --save, -s save --ver VER, -v VER version |
运行
1 2 |
python parse.py --net vgg16 -s -v 1 ./vgg.net |
输出
1 2 3 4 |
vgg16 ./vgg.net Ture |