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