python命令行解析模块-argparse

主要参考blog:

https://www.cnblogs.com/dengtou/p/8413609.html

https://blog.csdn.net/guoyajie1990/article/details/76739977

https://www.cnblogs.com/yymn/p/8056487.html

argparse模块是Python的命令行解析模块,可以很方便的进行参数的传递,而不需要修改源代码。

argparse的使用主要有三步,创建解析对象,添加命令行参数,进行参数的解析

看代码和注释:

import argparse 

#创建一个解析对象,当运行help时description会显示
parser = argparse.ArgumentParser(description='Process some integers.') 

#添加命令行参数,有两种,该种是位置参数,以参数的位置为准,比如第一个出现的参数就是复制给integers的
parser.add_argument('integers', metavar='N', type=int, nargs='+',help='an integer for the accumulator') 

#第二种:可选参数,该参数调用时必须给出名字,然后后边跟着值,和位置参数不一样,其中'-s','--sum'是
#一样的,都是指的同一个参数,一个是短的,一个是长的,只不过同时出现的话参数默认保存在--sum两个杠的
#参数中
#其中后边跟着很多参数,更深入的用法需要知道各个参数的意义
parser.add_argument('-s','--sum', dest='accumulate', action='store_const',const=sum, default=max, help='sum the integers (default: find the max)') 

#进行命令行的解析
args = parser.parse_args() 

#调用查看传入参数的值,就和调用类的方法一样args.integers或args.sum
print(args.accumulate(args.integers))

#常见的调用方式有:
#python prog.py -h
#python prog.py 1 2 3 4 --sum
#python convert.py yolov3.cfg yolov3.weights model_data/yolo.h5
#..........


猜你喜欢

转载自blog.csdn.net/herr_kun/article/details/82733970