python getopt argparse_python OptParse模块和argparse命令行解析的用法详解
https://www.cnblogs.com/wj-1314/p/8974021.html
OptParse模塊的簡(jiǎn)單介紹
Python 有兩個(gè)內(nèi)建的模塊用于處理命令行參數(shù): 一個(gè)是 getopt只能簡(jiǎn)單處理 命令行參數(shù); 另一個(gè)是 optparse,它功能強(qiáng)大,而且易于使用,可以方便地生成標(biāo)準(zhǔn)的、符合Unix/Posix 規(guī)范的命令行說(shuō)明。會(huì)自動(dòng)幫你負(fù)責(zé)-h幫助選項(xiàng)。
要自己定制程序的參數(shù)選項(xiàng)控制,可以使用python自帶的OptParse模塊,當(dāng)然也可以直接解析sys.argv里的參數(shù)(但是此比較麻煩)
OptParse支持一般性GUN的選項(xiàng)方法,包括:
解析時(shí)候 - 和 -- 的區(qū)別:
optparse modlue基本用法
一,基本用法
舉個(gè)例子:
結(jié)果:
二,新建對(duì)象
形參包括:
三,新建選項(xiàng)
3.1 可以使用下面幾個(gè)方法:
3.2 具體參數(shù)分析:
四,選項(xiàng)相關(guān)參數(shù):
4.1,可以用來(lái)同時(shí)設(shè)置多個(gè)選項(xiàng)的默認(rèn)參數(shù)
4.2,檢查是否有相應(yīng)的選項(xiàng)
4.3,刪除選項(xiàng)
4.4,舉個(gè)例子:
輸出:
4.5,添加選項(xiàng)組 add_option_group()
如果 options 很多的時(shí)候, 可以進(jìn)行分組,然后進(jìn)行添加. 分組的好處是, 對(duì)一系列程序參數(shù)可以分一個(gè)組,如果有獨(dú)立的 description , 可以另外處理.使用如下:
4.6,添加選項(xiàng)數(shù)組 add_options([Option1,…])
將各個(gè)Option對(duì)象放在一個(gè)列表里再一起添加
五,參數(shù)解析parse_args()
使用?parse_args()?對(duì)參數(shù)進(jìn)行解析,默認(rèn)是使用?sys.argv[1:]?作為參數(shù), 也可以傳遞一個(gè)命令行參數(shù)列表:?parse_args(list).
parse_args()?返回的兩個(gè)值:
六,幫助文檔
默認(rèn)自動(dòng)帶有 -h 和 --help 來(lái)輸出幫助文檔, 輸出后程序終止.幫助文檔由三部分組成:
OptionParser 的形參 version 可以指定 --version 輸出的字符串, 同樣支持%prog, 如 version="%prog 1.0"舉個(gè)例子:
Python命令行解析argparse常用語(yǔ)法使用簡(jiǎn)介
python中命令行解析最簡(jiǎn)單最原始的方法是使用sys.argv來(lái)實(shí)現(xiàn),更高級(jí)的可以使用aegparse這個(gè)模塊,argparse從python2.7開(kāi)始被加入標(biāo)準(zhǔn)庫(kù),所以python版本在2.7以下,那么需要安裝一下。
1、導(dǎo)入argparse模塊
2、創(chuàng)建解析器對(duì)象ArgumentParser,可以添加參數(shù)。
description:描述程序
parser=argparse.ArgumentParser(description="This is a example program ")
add_help:默認(rèn)是True,可以設(shè)置False禁用
3、add_argument()方法,用來(lái)指定程序需要接受的命令參數(shù)
定位參數(shù):
parser.add_argument("echo",help="echo the string")
可選參數(shù):
parser.add_argument("--verbosity", help="increase output verbosity")
在執(zhí)行程序的時(shí)候,定位參數(shù)必選,可選參數(shù)可選。
add_argument()常用的參數(shù):
dest:如果提供dest,例如dest="a",那么可以通過(guò)args.a訪(fǎng)問(wèn)該參數(shù)
default:設(shè)置參數(shù)的默認(rèn)值
action:參數(shù)出發(fā)的動(dòng)作
store:保存參數(shù),默認(rèn)
store_const:保存一個(gè)被定義為參數(shù)規(guī)格一部分的值(常量),而不是一個(gè)來(lái)自參數(shù)解析而來(lái)的值。
store_ture/store_false:保存相應(yīng)的布爾值
append:將值保存在一個(gè)列表中。
append_const:將一個(gè)定義在參數(shù)規(guī)格中的值(常量)保存在一個(gè)列表中。
count:參數(shù)出現(xiàn)的次數(shù)
parser.add_argument("-v", "--verbosity", action="count", default=0, help="increase output verbosity")
version:打印程序版本信息
type:把從命令行輸入的結(jié)果轉(zhuǎn)成設(shè)置的類(lèi)型
choice:允許的參數(shù)值
parser.add_argument("-v", "--verbosity", type=int, choices=[0, 1, 2], help="increase output verbosity")
help:參數(shù)命令的介紹
總結(jié)
以上是生活随笔為你收集整理的python getopt argparse_python OptParse模块和argparse命令行解析的用法详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: JAVA个go哪个写web方便_Go语言
- 下一篇: 恒生java开发复试_2019恒生电子面