Python optparser模組簡介

來源:互聯網
上載者:User

  寫Python指令碼寫多了,有的指令碼參數很多,有的指令碼參數需要經常調節,直接去指令碼中改參數或簡單的通過sys.argv來傳遞參數都不方便,於是就專門學習了一下專用的選項解析器optparser模組。

  一個簡單的例子:

  假設我們需要產生一些服從二維高斯分布的一些隨機點,該Python指令碼需要使用者輸入3個參數:產生的隨機點的個數,儲存這些隨機點的檔案的路徑,以及是否在標準輸出上列印這些點。三個參數在執行該Python指令碼時由三個選項指定,選項部分的代碼如下:

 from optparse import OptionParser  parser=OptionParser() #-n選項,指定產生的隨機點的個數 parser.add_option('-n','--num',dest='num',help='The number of points',type='float',default=400) #-f選項,指定儲存隨機點的檔案的路徑 parser.add_option('-f','--file',dest='file',help='The path of file',default='file.txt') #-p選項,指定是否列印產生的隨機點 parser.add_option('-p','--print',dest='print',help='Print or Not',action='store_true')  (options,args)=parser.parse_args() #從命令列中取得選項指定的參數,並傳遞給以下變數 num=options.num file_path=options.file print=options.print 

  add_option()說明:

dest 存取該選項參數的變數名
help 協助資訊,在僅有-h或--help選項時會輸出所有選項的協助資訊
type 選項參數的類型,若不指定則預設為string
default 選項參數的預設值

  下面逐個介紹代碼中的選項:

  -n:指定產生的隨機點的個數,--n是其長選項的形式,參數的名字是num,預設值是400,參數的類型是float(如果不指定type則是預設類型string),

  -f:指定儲存隨機點的檔案的路徑,預設值是file.txt

  -p:這個選項比較特殊,有一個action屬性,只要在執行指令碼時含有-p選項,如果action的值是store_true,則該參數取值為True,如果action的值是store_false,則該參數取值為False。

  參考文獻:

  [1] optparser模組OptionParser學習

  [2] Python -optparser之 OptionParser

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.