python 命令行參數(shù)分割方法 getopt

python 命令行參數(shù)分割方法 getopt

ID:14271161

大小:43.50 KB

頁數(shù):4頁

時間:2018-07-27

python 命令行參數(shù)分割方法 getopt_第1頁
python 命令行參數(shù)分割方法 getopt_第2頁
python 命令行參數(shù)分割方法 getopt_第3頁
python 命令行參數(shù)分割方法 getopt_第4頁
資源描述:

《python 命令行參數(shù)分割方法 getopt》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、os下有個getopt的方法,很好用。每次可以得到一個三元tupple,其中第一個為起始路徑,第二個為起始路徑下的文件夾,第三個是起始路徑下的文件。51Testing軟件測試網(wǎng)R#QQU/tsy/Rn1.導(dǎo)入getopt,sys模塊51Testing軟件測試網(wǎng)5d"X$SO!t#wp2.分析命令行參數(shù)51Testing軟件測試網(wǎng)8mX

2、Sj3q7Il3.處理結(jié)果51Testing軟件測試網(wǎng)[X#s5D$u$xjL7j51Testing軟件測試網(wǎng)#Zn@?V9N@第一步很簡單,只需要:,lH-CfS0importgetopt,sys

3、51Testing軟件測試網(wǎng)^4~ho4h*]So51Testing軟件測試網(wǎng)J;?3p8v%W[/^第二步處理方法如下(以Python手冊上的例子為例):BXGP;Yq(Qv5P$n!v051Testing軟件測試網(wǎng)z!Z4]:YtsRLPython代碼1.try:??2.????opts,?args?=?getopt.getopt(sys.argv[1:],?"ho:",?["help",?"output="])??3.except?getopt.GetoptError:??4.????#?print?help?information?an

4、d?exit:??try:opts,args=getopt.getopt(sys.argv[1:],"ho:",["help","output="])exceptgetopt.GetoptError:#printhelpinformationandexit:?5{(RREEF01.處理所使用的函數(shù)叫g(shù)etopt(),因?yàn)槭侵苯邮褂胕mport導(dǎo)入的getopt模塊,所以要加上限定getopt才可以。51Testing軟件測試網(wǎng)}z&^9?1@[O2.使用sys.argv[1:]過濾掉第一個參數(shù)(它是執(zhí)行腳本的名字,不應(yīng)算作參數(shù)的一部分)。51Testing軟件

5、測試網(wǎng)D0lK`u3.使用短格式分析串"ho:"。當(dāng)一個選項(xiàng)只是表示開關(guān)狀態(tài)時,即后面不帶附加參數(shù)時,在分析串中寫入選項(xiàng)字符。當(dāng)選項(xiàng)后面是帶一個附加參數(shù)時,在分析串中寫入選項(xiàng)字符同時后面加一個":"號。所以"ho:"就表示"h"是一個開關(guān)選項(xiàng);"o:"則表示后面應(yīng)該帶一個參數(shù)。51Testing軟件測試網(wǎng)$wfy-B*y4.使用長格式分析串列表:["help","output="]。長格式串也可以有開關(guān)狀態(tài),即后面不跟"="號。如果跟一個等號則表示后面還應(yīng)有一個參數(shù)。這個長格式表示"help"是一個開關(guān)選項(xiàng);"output="則表示后面應(yīng)該帶一個參數(shù)。51Te

6、sting軟件測試網(wǎng)l/xjp)d0I}[5.調(diào)用getopt函數(shù)。函數(shù)返回兩個列表:opts和args。opts為分析出的格式信息。args為不屬于格式信息的剩余的命令行參數(shù)。opts是一個兩元組的列表。每個元素為:(選項(xiàng)串,附加參數(shù))。如果沒有附加參數(shù)則為空串''。51Testing軟件測試網(wǎng)sX0s0bUqL6.整個過程使用異常來包含,這樣當(dāng)分析出錯時,就可以打印出使用信息來通知用戶如何使用這個程序。51Testing軟件測試網(wǎng)'B3N6QCwF1aI's%G:g!

7、6Y#Sx0如上面解釋的一個命令行例子為:'Mww.YT1w7tx

8、0'-h-ofile--help--output=outfile1file2'51Testing軟件測試網(wǎng)#K:lG-r5c&Q;yG.SfAU_Y0R'V/X0在分析完成后,opts應(yīng)該是:51Testing軟件測試網(wǎng)N"d'wsi*(Z,y^-e[('-h',''),('-o','file'),('--help',''),('--output','out')]51Testing軟件測試網(wǎng)I[9w6l;h/D2z(Q51Testing軟件測試網(wǎng){V&Kw6JaA)g-RC-T而args則為:z"n:?CQ,[)l,e0['file

9、1','file2']51Testing軟件測試網(wǎng)7CF7behzxG{第三步主要是對分析出的參數(shù)進(jìn)行判斷是否存在,然后再進(jìn)一步處理。主要的處理模式為:51Testing軟件測試網(wǎng)kQDL)nfK0Y+hB(qm/TE.P!}/DW0Python代碼1.for?o,?a?in?opts:??2.????if?o?in?("-h",?"--help"):??3.????????usage()??4.????????sys.exit()??5.????if?o?in?("-o",?"--output"

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。