Python optparse模塊及簡(jiǎn)單使用
optparse,是一個(gè)更夠讓程序設(shè)計(jì)人員輕松設(shè)計(jì)出簡(jiǎn)單明了、易于使用、符合標(biāo)準(zhǔn)的Unix命令例程式的Python模塊,生成使用和幫助信息。
參數(shù)說(shuō)明
- dest:用于保存輸入的臨時(shí)變量,其值通過(guò)options的屬性進(jìn)行訪問(wèn),存儲(chǔ)的內(nèi)容是dest之前輸入的參數(shù),多個(gè)參數(shù)用逗號(hào)分隔
- type: 用于檢查命令行參數(shù)傳入的參數(shù)的數(shù)據(jù)類型是否符合要求,有 string,int,float 等類型
- help:用于生成幫助信息
- default: 給dest的默認(rèn)值,如果用戶沒(méi)有在命令行參數(shù)給dest分配值,則使用默認(rèn)值
函數(shù)說(shuō)明
- parse = optparse.OptionParser(usage, version=“%prog 版本解釋”)
- parse.add_option(‘-a’, ‘–aaa’, dest=‘aaa’, help=‘aaa,aaa’)
- group1 = optparse.OptionGroup(parse, “fff”, ‘dddd’)
- group1.add_option(‘-s’, ‘–server’, dest=‘hhhh’, help=“dddd”)
- parse.add_option_group(group1)
- options, args = parse.parse_args()
簡(jiǎn)單使用
from optparse import OptionParser
from optparse import OptionGroup
usage = 'Usage: %prog [options] arg1 arg2 ...'
parser = OptionParser(usage,version='%prog 1.0')
#通過(guò)OptionParser類創(chuàng)建parser實(shí)例,初始參數(shù)usage中的%prog等同于os.path.basename(sys.argv[0]),即
#你當(dāng)前所運(yùn)行的腳本的名字,version參數(shù)用來(lái)顯示當(dāng)前腳本的版本。
'''
添加參數(shù),-f、--file是長(zhǎng)短options,有一即可。
action用來(lái)表示將option后面的值如何處理,比如:
XXX.py -f test.txt
經(jīng)過(guò)parser.parse_args()處理后,則將test.txt這個(gè)值存儲(chǔ)進(jìn)-f所代表的一個(gè)對(duì)象,即定義-f中的dest
即option.filename = 'test.txt'
action的常用選項(xiàng)還有store_true,store_false等,這兩個(gè)通常在布爾值的選項(xiàng)中使用。
metavar僅在顯示幫助中有用,如在顯示幫助時(shí)會(huì)有:
-f FILE, --filename=FILE write output to FILE
-m MODE, --mode=MODE interaction mode: novice, intermediate, or expert
[default: intermediate]
如果-f這一項(xiàng)沒(méi)有metavr參數(shù),則在上面會(huì)顯示為-f FILENAME --filename=FILENAME,即會(huì)顯示dest的值
defalut是某一選項(xiàng)的默認(rèn)值,當(dāng)調(diào)用腳本時(shí),參數(shù)沒(méi)有指定值時(shí),即采用default的默認(rèn)值。
'''
parser.add_option('-f','--file',
action='store',dest='filename',
metavar='FILE',help='write output to FILE')
parser.add_option('-m','--mode',
default = 'intermediate',
help='interaction mode:novice,intermediate,or expert [default:%default]')
parser.add_option('-v','--verbose',
action='store_true',dest='verbose',default=True,
help='make lots of noise [default]')
parser.add_option('-q','--quiet',
action='store_false',dest='verbose',
help="be vewwy quiet (I'm hunting wabbits)")
group = OptionGroup(parser,'Dangerous Options',
'Caution: use these options at your own risk.'
'It is believed that some of them bite.')
#調(diào)用OptionGroup類,定制以組顯示的option
group.add_option('-g',action='store_true',help='Group option.')
#添加option
parser.add_option_group(group)
#將剛定制的groupoption加入parser中
group = OptionGroup(parser,'Debug Options')
group.add_option('-d','--debug',action='store_true',
help='Print debug information.')
group.add_option('-s','--sql',action='store_true',
help='Print all SQL statements executed')
group.add_option('-e',action='store_true',help='Print every action done')
parser.add_option_group(group)
(options,args) = parser.parse_args()
#解析腳本輸入的參數(shù)值,options是一個(gè)包含了option值的對(duì)象
#args是一個(gè)位置參數(shù)的列表
python.exe xxx.py --help 顯示結(jié)果如下:
Usage: test_optparse.py [options] arg1 arg2 ...
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-f FILE, --file=FILE write output to FILE
-m MODE, --mode=MODE interaction mode:novice,intermediate,or expert
[default:intermediate]
-v, --verbose make lots of noise [default]
-q, --quiet be vewwy quiet (I'm hunting wabbits)
Dangerous Options:
Caution: use these options at your own risk.It is believed that some
of them bite.
-g Group option.
Debug Options:
-d, --debug Print debug information.
-s, --sql Print all SQL statements executed
-e Print every action done到此這篇關(guān)于Python optparse模塊及簡(jiǎn)單使用的文章就介紹到這了,更多相關(guān)Python optparse模塊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python的繼承知識(shí)點(diǎn)總結(jié)
在本文里小編整理的是關(guān)于python的繼承知識(shí)點(diǎn)總結(jié)內(nèi)容,學(xué)習(xí)到關(guān)于繼承的讀者們可以參考一下。2018-12-12
瀏覽器常用基本操作之python3+selenium4自動(dòng)化測(cè)試(基礎(chǔ)篇3)
瀏覽器常用基本操作有很多種,今天給大家介紹python3+selenium4自動(dòng)化測(cè)試的操作方法,是最最基礎(chǔ)的一篇,對(duì)python3 selenium4自動(dòng)化測(cè)試相關(guān)知識(shí)感興趣的朋友一起看看吧2021-05-05
一篇文章弄懂Python中所有數(shù)組數(shù)據(jù)類型
這篇文章主要給大家介紹了關(guān)于Python中所有數(shù)組數(shù)據(jù)類型的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06
python中迭代器(iterator)用法實(shí)例分析
這篇文章主要介紹了python中迭代器(iterator)用法,實(shí)例分析了Python中迭代器的相關(guān)使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04
python中判斷類型函數(shù)isinstance()示例詳解
isinstance()函數(shù)是Python的內(nèi)置函數(shù),用于判斷一個(gè)變量是否是某個(gè)類型或者是該類型的子類的實(shí)例,在Python中,所有類都繼承自object,所以任何實(shí)例都會(huì)是object的實(shí)例,本文給大家介紹python中判斷類型函數(shù)isinstance(),感興趣的朋友一起看看吧2024-10-10

