日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

python命令行參數(shù)用法實例分析

系統(tǒng) 1857 0

本文實例講述了python命令行參數(shù)用法。分享給大家供大家參考,具體如下:

在命令行下執(zhí)行某些命令的時候,通常會在一個命令后面帶上一些參數(shù),這些參數(shù)會傳遞到程序里,進行處理,然后返回結(jié)果,在linux 下很多命令其實也是用python來實現(xiàn)的。那么如果做到在命令行輸入類似如下的命令并能得到正確的解析呢,比如

            
python commandline.py -l c:/temp -f c:/aaa.txt


          

這樣的命令,并在程序中進行處理。下面詳細(xì)介紹處理辦法。

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()


          

下面在命令行窗口運行處理,看效果圖:

python命令行參數(shù)用法實例分析_第1張圖片

python命令行參數(shù)用法實例分析_第2張圖片

python命令行參數(shù)用法實例分析_第3張圖片

由此我們可以發(fā)現(xiàn), options 里面 記錄了每個選項是否為 true ,而 arguments 里面按順序記錄了各自的參數(shù)。我們可以在自己的程序中得到,并進行處理。

當(dāng)然,你還可以通過 print sys.argv 來得到所有的參數(shù),但 sys.argv[0] 表示的就是當(dāng)前執(zhí)行的腳本.后面的才是參數(shù).

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)學(xué)運算技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設(shè)計有所幫助。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 延津县| 濮阳市| 喀喇| 无极县| 香格里拉县| 中卫市| 河曲县| 天镇县| 宁夏| 高青县| 綦江县| 西安市| 上蔡县| 白城市| 读书| 泽普县| 新郑市| 巍山| 阆中市| 铜梁县| 碌曲县| 石门县| 花莲县| 思南县| 高州市| 法库县| 焦作市| 临湘市| 隆昌县| 贡嘎县| 镇雄县| 香河县| 抚顺市| 岳普湖县| 大化| 宜兰市| 尉氏县| 耿马| 平南县| 涟水县| 灵寿县|