1. 按
推薦使用argparse
庫,可以自動生成幫助文檔,且開發使用都很方便,效果很好。
官方文檔:https://docs.python.org/3.8/howto/argparse.html
2. 實例
2.1. 添加不需要賦值的選項
If you are familiar with command line usage, you will notice that I haven’t yet touched on the topic of short versions of the options. It’s quite simple:
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("-v", "--version", help="Show the current version.",
action="store_true")
args = parser.parse_args()
if args.verbose:
print("The current version is v1.0")
將上述代碼保存在test.py
腳本里,然後在命令行中先轉到test.py
腳本再運行
python test.py -v
The current version is v1.0
再次運行,這次查看一下自動生成的幫助文件,效果很棒。
python test.py -h
usage: test.py [-h] [-v]
optional arguments:
-h, --help show this help message and exit
-v, --version Show the current version.
2.2. 添加需要賦值的選項
import argparse
parser = argparse.ArgumentParser()
parser.description='please enter two parameters a and b ...'
parser.add_argument("-a", "--inputA", help="this is parameter a", dest="argA", type=int, default="0")
parser.add_argument("-b", "--inputB", help="this is parameter b", type=int, default="1")
args = parser.parse_args()
print("parameter a is :",args.argA)
print("parameter b is :",args.inputB)
代碼保存到test2.py
文件中,我們先運行:python test2.py -h
,顯示如下結果:
python test2.py -h
usage: test2.py [-h] [-a ARGA] [-b INPUTB]
please enter two parameters a and b ...
optional arguments:
-h, --help show this help message and exit
-a ARGA, --inputA ARGA
this is parameter a
-b INPUTB, --inputB INPUTB
this is parameter b
-h
表示顯示幫助信息,也可以輸入--help
顯示幫助信息。通常--help
是表示完整的長參數,-h
表示短參數,兩者功能一致。- 上面的幫助信息顯示有兩個參數,輸入形式可以是
-a
和-b
或者是--inputA
和--inputB
help="this is parameter a"
的幫助信息也會顯示在窗口上面,用來描述該參數。type
表示該參數類型,必須輸入的類型。default
表示在沒有輸入該變量的情況下默認的值。a
和b
兩個參數不同的地方在於,a
參數中多了一個dest="argA"
,用來表示在代碼中如何引用參數a
。這個可以從代碼中看到,加了dest
之後,參數a
的引用方式是args.argA
。而b參數因爲沒有加dest
描述,默認的引用方式是args.inputB
。參數a
使用dest
已經改變了其引用名稱,因而默認的args.inputA
已經不能使用了。
在命令行直接運行 python test2.py
,結果如下:
python test2.py
parameter a is : 0
parameter b is : 1
沒有輸入參數,於是打印的就是默認的參數數值。
再次嘗試進行帶參數輸入python test2.py -a 2 -b 3
,結果如下:
python test2.py -a 2 -b 3
parameter a is : 2
parameter b is : 3
2.3. 更多幫助
一般而言,本文所介紹的兩種方法就夠用了,如果您還需要更多幫助,可以參考:官方文檔