argparse,输入参数,命令行交互
import argparse
if __name__ == '__main__':
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("--baud", "-b", dest="BAUDATE", type=int, default=115200, help="help - dest是实际使用的参数名,可选参数")
parser.add_argument("--port", required=True, help="Communication interface, 若没有dest,则使用--x或-x带的参数,必输入参数")
parser.add_argument("--verbose", action="store_true", default=False, help="bool变量,默认false,匹配到之后是true")
args = parser.parse_args()
#有dest,参数据使用的是dest的值
print(args.BAUDATE)
#没有dest,参数使用的是port,即--带的参数
print(args.port)
#使用bool变量,默认false
if(args.verbose):
print("verbose is true")
else:
print("verbose is false")
description=doc,默认使用命令行提示,如下
其中,中括号内的是可选参数,不使用中括号的是必选参数。
description可以添加自定义消息,提示帮助时会显示此消息
dest 是代码中实际使用的参数,
required 是必输入参数
action 可做bool变量输入
python main.py -h
usage: main.py [-h] [--baud BAUDATE] --port PORT [--verbose]
optional arguments:
-h, --help show this help message and exit
--baud BAUDATE, -b BAUDATE
help - dest是实际使用的参数名,可选参数
--port PORT Communication interface, 若没有dest,则使用--x或-x带的参数,必输入参数
--verbose bool变量,默认false,匹配到之后是true
python main.py --port 2 --verbose
115200
2
verbose is true