python命令列引數解析
阿新 • • 發佈:2018-12-19
一、getopt模組
getopt.getopt(args, options[, long_options])
args為需要解析的命令列引數列表,一般為sys.argv[1:],這是因為argv[0]為指令碼的路徑。
options為希望識別的引數,如果該命令列引數需要指定一個引數值,例如-a param_a,那麼它必須跟一個冒號":",即"a:",再加上不需要指定引數值的c即為:"a:c"或者"ca:"。
使用長格式的命令列引數,例如"--b=param_b"時,需要在引數3中指定它。引數3是一個list指定了那些需要識別的長格式的引數。例如--b引數需要在getopt的引數3中指定。格式為["b="](注意它是一個列表),如果有多個,假設還有引數--d=x,--e=y,--f=z需要解析那麼需要在列表中一一指定,如:["b=","d=","e="]。
返回值包含兩個值,第一個值即已識別的-a --b -c這些引數及其值的鍵值對(option,value)。
二、argparse模組
argparse是一個可以自動生成使用幫助的python模組
可以進行一些更復雜的設定 ,但是使用起來沒有getopt模組簡單