本文實(shí)例講述了python命令行參數(shù)用法。分享給大家供大家參考,具體如下:
在命令行下執(zhí)行某些命令的時(shí)候,通常會(huì)在一個(gè)命令后面帶上一些參數(shù),這些參數(shù)會(huì)傳遞到程序里,進(jìn)行處理,然后返回結(jié)果,在linux 下很多命令其實(shí)也是用python來(lái)實(shí)現(xiàn)的。那么如果做到在命令行輸入類(lèi)似如下的命令并能得到正確的解析呢,比如
python commandline.py -l c:/temp -f c:/aaa.txt
這樣的命令,并在程序中進(jìn)行處理。下面詳細(xì)介紹處理辦法。
python為我們提供了一個(gè)模塊叫optparse,也是專(zhuān)門(mén)來(lái)處理命令行選項(xiàng)的。使用的方法
1. 產(chǎn)生一個(gè)
optparse.OptionParser
對(duì)象
2. 為這個(gè)對(duì)象增加 option
3. 對(duì)
optparse.OptionParser
對(duì)象進(jìn)行
parse_args()
解析. 就能得到要調(diào)用的方法,和具體的參數(shù),下面就按這個(gè)步驟寫(xiě)了一個(gè)例子:
#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
#可以寫(xiě)入你自己的邏輯了
if options.file:
print 'begin file function:',arguments
#可以寫(xiě)入自己的邏輯處理了
if __name__=='__main__':
execCommand()
下面在命令行窗口運(yùn)行處理,看效果圖:
由此我們可以發(fā)現(xiàn), options 里面 記錄了每個(gè)選項(xiàng)是否為 true ,而 arguments 里面按順序記錄了各自的參數(shù)。我們可以在自己的程序中得到,并進(jìn)行處理。
當(dāng)然,你還可以通過(guò)
print sys.argv
來(lái)得到所有的參數(shù),但
sys.argv[0]
表示的就是當(dāng)前執(zhí)行的腳本.后面的才是參數(shù).
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Python數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python入門(mén)與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元

