[toc]
基本用法
1 2 3 4 5 6 import argparseparser = argparse.ArgumentParser() parser.add_argument("square" , help ="display a square of a given number" , type =int ) args = parser.parse_args() print (args.square**2 )
1 2 3 4 5 6 import argparseparser = argparse.ArgumentParser() parser.add_argument("--verbosity" , help ="increase output verbosity" ) args = parser.parse_args() if args.verbosity: print ("verbosity turned on" )
1 2 3 4 5 6 7 import argparseparser = argparse.ArgumentParser() parser.add_argument("-v" , "--verbose" , help ="increase output verbosity" , action="store_true" ) args = parser.parse_args() if args.verbose: print ("verbosity turned on" )
传入多个参数 1 2 3 4 5 6 7 import argparseparser = argparse.ArgumentParser(description='命令行中传入一个数字' ) parser.add_argument('integers' , type =str , nargs='+' ,help ='传入的数字' ) args = parser.parse_args() print (args.integers)
nargs=’*’ :表示参数可设置零个或多个 nargs=’+’ :表示参数可设置一个或多个 nargs=’?’:表示参数可设置零个或一个
默认值 1 2 3 4 5 6 7 8 9 import argparseparser = argparse.ArgumentParser(description='姓名' ) parser.add_argument('--family' , type =str , default='张' ,help ='姓' ) parser.add_argument('--name' , type =str , default='三' , help ='名' ) args = parser.parse_args() print (args.family+args.name)
必需参数 1 2 3 4 5 6 7 8 9 import argparseparser = argparse.ArgumentParser(description='姓名' ) parser.add_argument('--family' , type =str , help ='姓' ) parser.add_argument('--name' , type =str , required=True , default='' , help ='名' ) args = parser.parse_args() print (args.family+args.name)
参考 [1] argparse 教程
[2] argparse模块用法实例详解