今天就跟大家聊聊有關(guān)如何在python中使用命令行參數(shù),可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
創(chuàng)新互聯(lián)專注于中大型企業(yè)的網(wǎng)站制作、成都做網(wǎng)站和網(wǎng)站改版、網(wǎng)站營銷服務(wù),追求商業(yè)策劃與數(shù)據(jù)分析、創(chuàng)意藝術(shù)與技術(shù)開發(fā)的融合,累計客戶近千家,服務(wù)滿意度達97%。幫助廣大客戶順利對接上互聯(lián)網(wǎng)浪潮,準確優(yōu)選出符合自己需要的互聯(lián)網(wǎng)運用,我們將一直專注成都品牌網(wǎng)站建設(shè)和互聯(lián)網(wǎng)程序開發(fā),在前進的路上,與客戶一起成長!在命令行下執(zhí)行某些命令的時候,通常會在一個命令后面帶上一些參數(shù),這些參數(shù)會傳遞到程序里,進行處理,然后返回結(jié)果,在linux 下很多命令其實也是用python來實現(xiàn)的。那么如果做到在命令行輸入類似如下的命令并能得到正確的解析呢,比如
python commandline.py -l c:/temp -f c:/aaa.txt
這樣的命令,并在程序中進行處理。下面詳細介紹處理辦法。
python為我們提供了一個模塊叫optparse,也是專門來處理命令行選項的。使用的方法
1. 產(chǎn)生一個 optparse.OptionParser
對象
2. 為這個對象增加 option
3. 對 optparse.OptionParser
對象進行parse_args()
解析. 就能得到要調(diào)用的方法,和具體的參數(shù),下面就按這個步驟寫了一個例子:
#coding:utf-8 import optparse import sys def execCommand(): descriptionMessage = """ python command line test """ p = optparse.OptionParser(description=descriptionMessage, prog='mycommand', version='mycommand 0.1', usage= '%prog [starting ][action]') p.add_option('--list', '-l', action="store_true", help='lists all files', default=False) p.add_option('--file', '-f', action="store_true", help='test process file', default=False) options, arguments = p.parse_args() print 'get all options:',options if options.list: print 'begin list function :',arguments #可以寫入你自己的邏輯了 if options.file: print 'begin file function:',arguments #可以寫入自己的邏輯處理了 if __name__=='__main__': execCommand()
下面在命令行窗口運行處理,看效果圖:
由此我們可以發(fā)現(xiàn), options 里面 記錄了每個選項是否為 true ,而 arguments 里面按順序記錄了各自的參數(shù)。我們可以在自己的程序中得到,并進行處理。
當然,你還可以通過 print sys.argv
來得到所有的參數(shù),但sys.argv[0]
表示的就是當前執(zhí)行的腳本.后面的才是參數(shù).
看完上述內(nèi)容,你們對如何在python中使用命令行參數(shù)有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。