【Python】讀取命令列參數、在PyDev中設定Python運行時的參數

來源:互聯網
上載者:User

標籤:python   命令列   參數   測試   遍曆   

有時候,我們寫的命令列程式需要批次執行,這裡可以讓Python程式讀取命令列參數,再編寫一個命令列批次執行指令碼.bat,實際上就是一個充滿命令的、改了尾碼名的文字檔,在多個測試案例扔進Python程式中是非常有用的。

例如,如,有一個cmdArgs.py程式,當在python cmdArgs.py 後面帶上-h -i,程式則輸出-h與-i參數,後面所帶內容:


如果輸入其它參數,比如這裡多出來的-u參數,程式是自動報錯的。

這個cmdArgs.py的代碼如下,十分簡單:

#-*-coding:utf-8-*-import sys,getoptopts,args=getopt.getopt(sys.argv[1:], "h:i:")#"h:i:"指明本程式只接受-h -i的參數#sys.argv[1:]為要處理的參數列表,sys.argv[0]為指令碼名,所以只取sys.argv[1:]部分,過濾掉指令碼名for op,value in opts:    if op=="-i":        print "-i values is:"+value;#此處的value就是-i的值    if op=="-h":            print "-h values is:"+value;

其中的for迴圈需要採取雙變數的遍曆。

opts,args數組,類似於一個key-value對數組。

通過遍曆opts數組,能夠把命令列後面的參數所取出。

如果要在Eclipse的PyDev環境運行上面的程式,可以採用如的方式,制定這個程式時所需要的參數:

右鍵相應的python檔案,選擇以……方式運行中的回合設定,在其中的Arguments中補上相應的參數就可以了。


如果,在Programs arguments中寫入:-h sdsad -i sdasdas上面的程式運行結果如下:


如果制定其它參數,同樣會報錯


著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

【Python】讀取命令列參數、在PyDev中設定Python運行時的參數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.