Python中 sys.argv[]的用法簡明解釋

來源:互聯網
上載者:User

標籤:參數   .com   lan   height   分享圖片   pre   png   獲得   class   

Python中 sys.argv[]的用法簡明解釋

      因為是看書自學的python,開始後不久就遇到了這個引入的模組函數,且一直在IDLE上編輯了後運行,試圖從結果發現它的用途,然而結果一直都是沒結果,也在網上查了許多,但發現這個問題的比較詳細的解釋只有一個版本,大部分都是轉裁和複製的。給的都是簡明python教程上那個一長串代碼的例子,說看了就明白了,可我看得暈頭轉向的還是沒真正明白,只知道“sys.argv[0]表示代碼本身檔案路徑”這點,其實還是不明其意。後來經過大量努力,多方求教才真正明悟了,謹以記錄和分享,希望能從另一個角度給同在求索過程中的同學一點啟發。

  sys.argv[]說白了就是一個從程式外部擷取參數的橋樑,這個“外部”很關鍵,所以那些試圖從代碼來說明它作用的解釋一直沒看明白。因為我們從外部取得的參數可以是多個,所以獲得的是一個列表(list),也就是說sys.argv其實可以看作是一個列表,所以才能用[]提取其中的元素。其第一個元素是程式本身,隨後才依次是外部給予的參數。

下面我們通過一個極簡單的test.py程式的運行結果來說明它的用法。

1 #test.py2 3 import sys4 a=sys.argv[0]5 print(a)

將test.py儲存在c盤的根目錄下。

在程式中找到 ‘運行’->點擊->輸入"cmd"->斷行符號鍵   進入控制台命令視窗(如),先輸入cd c:\   (作用是將命令路徑改到c盤根目錄),然後輸入test.py運行我們剛剛寫的程式:

 

得到的結果是C:\test.py,這就是0指代碼(即此.py程式)本身的意思。

然後我們將代碼中0改為1 :

a=sys.argv[1]

儲存後,再從控制台視窗運行,這次我們加上一個參數,輸入:test.py what

 

 得到的結果就是我們輸入的參數what,看到這裡你是不是開始明白了呢。

那我們再把代碼修改一下:

a=sys.argv[2:]

儲存後,再從控制台窗檯運行程式,這次多加幾個參數,以空格隔開:

test.py a b c d e f

 

得到的結果為[‘b’, ’c’, ’d’, ’e’, ’f’]

 

應該大徹大悟了吧。Sys.argv[ ]其實就是一個列表,裡邊的項為使用者輸入的參數,關鍵就是要明白這參數是從程式外部輸入的,而非代碼本身的什麼地方,要想看到它的效果就應該將程式儲存了,從外部來運行程式並給出參數。

Python3 從入門到開車

轉自:
Python中 sys.argv[]的用法簡明解釋 - 覆手為雲p - 部落格園
https://www.cnblogs.com/aland-1415/p/6613449.html

Python中 sys.argv[]的用法簡明解釋

相關文章

聯繫我們

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