Python中sys.argv用法圖文詳解
一、Python sys 模塊
“sys” 是 “system”,是一個系統(tǒng)模塊,該模塊提供了一些接口,用戶訪問python解釋器自身使用和維護的變量,同時模塊中還提供了一些函數(shù),而我們今天要講解的 argv 就是其中一個函數(shù)。
二、sys.argv
上一篇文章我們講到了引用模塊,這里sys 就相當于一個模塊,而argv就是模塊里的一個函數(shù)。
“argv” 即 “argument value” 是一個列表對象,其中存儲的是在命令行調用 python 腳本是提供的 “命令行參數(shù)”。
這里重點理解這句話,我們舉例來說明:
先看一個簡單的例子:
import sys print(sys.argv[0])
我們看一下輸出結果:
這里我們將 文件命名為 test.py 放在我們的系統(tǒng)目錄下,在cmd下執(zhí)行:python test.py
我們看一下輸出結果;
可以看到結果是:被調用的腳本文件名或全路徑
這里需要強調的是:argv[0] 是 被調用的腳本文件名或全路徑。
那我們改一下程序,再試試:
import sys print(sys.argv[1])
這里我們將代碼改成 argv[1]
此時我們輸入 python test.py hello 看一下運行結果:
看到這,是不是有的小伙伴就明白啦,sys.argv[]其實就是一個列表。
那我們再試一個,既然sys.argv是一個列表,我們就讓它從第三個開始輸出:
import sys print(sys.argv[2:])
看一下運行結果:
這次我們輸入的是 1 2 3 4 5 ,我們期望從列表的第三個元素開始輸出,結果也很我們期望的一樣,講到這里,sys.argv就被我們徹底搞懂了。
總結:
sys.argv[]是一個列表
sys.argv[0]是被調用的腳本文件名或全路徑
sys.argv[1:]之后的元素就是我們從程序外部輸入的,而非代碼本身的,想要看到它的效果,就要將程序保存,從外部運行程序并給參數(shù),這也是我們在cmd里面運行的原因。
提升:
既然已經(jīng)搞明白了 sys.argv[]的基本用法,那我們再測試一下:
import sys for index,arg in enumerate(sys.argv): print("第%d個參數(shù)是: %s" % (index, arg))
這次輸入: a b c d e
我們可以看到輸出結果是將 腳本文件名和我們輸入的參數(shù)依次輸出。
到此這篇關于Python中sys.argv用法的文章就介紹到這了,更多相關Python sys.argv用法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
python 實現(xiàn)format進制轉換與刪除進制前綴
這篇文章主要介紹了python 實現(xiàn)format進制轉換與刪除進制前綴的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03正確理解Python中if __name__ == ''__main__''
今天小編就為大家分享一篇關于正確理解Python中if __name__ == '__main__' ,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01使用Python的Twisted框架編寫非阻塞程序的代碼示例
Twisted是基于異步模式的開發(fā)框架,因而利用Twisted進行非阻塞編程自然也是必會的用法,下面我們就來一起看一下使用Python的Twisted框架編寫非阻塞程序的代碼示例:2016-05-05詳解Python實現(xiàn)按任意鍵繼續(xù)/退出的功能
在學Python時在總想實現(xiàn)一個按任意鍵繼續(xù)/退出的程序(受.bat毒害), 奈何一直沒有寫,今天抽時間寫出來了,下面分享給大家,有需要的可以參考借鑒。2016-08-08