




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
1.argparse增加参数函数add_argument ArgumentParser.add_argument( nameorflags…[, action][, nargs][, const][, default][, type][,choices][, required][, help][, metavar][, dest] ) 参数解析: 1.nameorflags:是必须的参数,该参数接受选项参数或者是位置参数 >>>parser.add_argument('-f','--foo')#选项参数 >>>parser.add_argument('bar')#位置参数 2.nargs: (1).指定选项后面需要接受参数的个数,多个或0个,默认为1个(注意指定后参数变为列表)。 (2).当选项接受1个或者0个参数时,指定nargs='?',当参数为空时,获取“default”的值,但是选项而后面没有跟具体参数,获取“const”的值。(见const) (3).当需要跟n个参数时(–fooa1a2a3…),则需要设置nargs='*'。 (4).当需要至少一个参数时,nargs='+',当参数少于1个时(即没有参数),位置参数会报错误。 >>>parser.add_argument('-u',nargs=2)#设置参数的个数 >>>parser.parse_args('-uab'.split()) Namespace(u=['a','b']) >>> #nargs="*" >>>parser.add_argument('-u',nargs='*') >>>parser.parse_args('-uabcde'.split()) Namespace(u=['a','b','c','d','e']) >>> #nargs="+" >>>parser.add_argument('u',nargs='+') >>>parser.parse_args(''.split()) usage:[-h]u[u...] :error:toofewarguments 3.const:当选项接受1个或者0个参数时,指定nargs=’?',当参数为空时,获取“default”的值,但是选项而后面没有跟具体参数,获取“const”的值。 >>>parser.add_argument('-u',nargs='?') >>>parser.parse_args(''.split()) Namespace(u=None) >>>parser.parse_args('-ua'.split()) Namespace(u='a') >>>parser.add_argument('-u',nargs='?',default='d') >>>parser.add_argument('A',nargs='?',default='e') >>>parser.parse_args(''.split()) Namespace(A='e',u='d') >>>parser.parse_args('-u'.split()) Namespace(A='e',u=None) >>>parser.add_argument('-u',nargs='?',default='d',const='s') >>>parser.add_argument('A',nargs='?',default='T',const='P') >>>parser.parse_args(''.split()) Namespace(A='T',u='d') >>>parser.parse_args('-u'.split()) Namespace(A='T',u='s') >>>parser.parse_args('A'.split()) Namespace(A='A',u='d') 4.default:参数需要默认值,默认为None,当default=argparse.SUPPRESS时,不使用任何值。 >>>parser.add_argument('u',nargs='*',default=argparse.SUPPRESS) >>>parser.parse_args(''.split()) Namespace() 5.type:参数类型设置,可以是python的基本类型,也可以是用来检查值的范围和合法性的自定义函数。 >>>parser.parse_args('-u',type=int) >>>parser.add_argument('f',type=file) >>>parser.parse_args('-u2aa'.split()) Namespace(f=<openfile'aa',mode'r'at0x8

xf****65
实名认证
内容提供者


最近下载