python模块总结(一)命令行解析模块argparse

argparse 是python自带的命令行参数解析包,可以用来方便地读取命令行参数
import argparse

parser = argparse.ArgumentParser(description="Demo of argparse")
# parser.add_argument("--name",default="kan")    # 默认值,当没有指定--name参数时,默认值为:kan
parser.add_argument("--name",required=True,help="Name of the user")    # required=True,指定必须具备此参数,--name,否则报错
parser.add_argument("-arch",required=True,choices=["alexnet","vgg"])    # choices=[],指定此参数可使用的参数值
parser.add_argument("--names",required=True,nargs='+')    # 设置参数在使用可以提供的个数
# '?'   0或1个参数
# '*'   0或所有参数
# '+'   所有,并且至少一个参数

args = parser.parse_args()
name = args.name
names = args.names
arch = args.arch

print "hello {name},arch:{arch},names:{names}".format(
    name=name,
    arch=arch,
    names=names,
)

执行效果

$ python test.py -h
usage: test.py [-h] --name NAME -arch {alexnet,vgg} --names NAMES [NAMES ...]

Demo of argparse

optional arguments:
  -h, --help            show this help message and exit
  --name NAME           Name of the user
  -arch {alexnet,vgg}
  --names NAMES [NAMES ...]

$ python test.py --name kan -arch vgg --names a b c d
hello kan,arch:vgg,names:['a', 'b', 'c', 'd']

 

 

posted @ 2020-09-23 15:08  guoxianqi  阅读(207)  评论(0编辑  收藏  举报