import argparse parser = argparse.ArgumentParser() parser.add_argument("echo", help="echo the string you use here") args = parser.parse_args() print(args.echo)
输入
python test.py -h
cmd 中显示:
usage: test.py [-h] echo
positional arguments:
echo echo the string you use here
optional arguments:
-h, --help show this help message and exit
输入指定类型的参数
我们在 cmd 中输入的参数,都会被转化为 string 类型,但有时我们需要 int 类型。
一般有两种方法
第一种是获得参数后在参数内部进行转化
1 2 3 4 5
import argparse parser = argparse.ArgumentParser() parser.add_argument("square", help="display a square of a given number") args = parser.parse_args() print int(args.square)**2
第二种是在add_argument()方法中用关键字type指定输入类型,即可解决
1 2 3 4 5 6
import argparse parser = argparse.ArgumentParser() parser.add_argument("square", help="display a square of a given number", type=int) args = parser.parse_args() print(args.square ** 2) # 15129
if __name__ == '__main__': script_start_time = time.time() parser = argparse.ArgumentParser(description='Classification example - DIGITS') ### Positional arguments parser.add_argument('caffemodel', help='Path to a .caffemodel') parser.add_argument('deploy_file', help='Path to the deploy file') parser.add_argument('image', help='Path to an image') ### Optional arguments parser.add_argument('-m', '--mean', help='Path to a mean file (*.npy)') parser.add_argument('-l', '--labels', help='Path to a labels file') parser.add_argument('--nogpu', action='store_true', help="Don't use the GPU") args = vars(parser.parse_args()) image_files = [args['image']] classify(args['caffemodel'], args['deploy_file'], image_files, args['mean'], args['labels'], not args['nogpu']) print'Script took %s seconds.' % (time.time() - script_start_time,)