Sys.argu

然后再說說argv這個變量?!竌rgv」是「argument variable」參數(shù)變量的簡寫形式,一般在命令行調(diào)用的時候由系統(tǒng)傳遞給程序。這個變量其實是一個List列表,argv[0] 一般是被調(diào)用的腳本文件名或全路徑,和操作系統(tǒng)有關(guān),argv[1]和以后就是傳入的數(shù)據(jù)了。然后我們再看調(diào)用腳本的命令行:python using_sys.py we are argumentspython就不用說了,「using_sys.py」腳本名,后面的用空格分割開的「we」「are」「argument」就是參數(shù)了。PS.一般參數(shù)由空格分隔,如果參數(shù)內(nèi)部有空格要使用英文雙引號引起來比如這樣:python using_sys.py hi "I'm 7sDream"按照教程的命令行運(yùn)行腳本的時候,按照argv的定義:argv = ["using_sys.py", "we", "are", "argument"]然后用for對argv這個List進(jìn)行迭代輸出,就得到了教程里的結(jié)果。

先要裝載 os模塊:
import os

print os.getcwd()
或者
print os.path.abspath(os.curdir)
print os.path.abspath('.')
就可以了。
( . 代表當(dāng)前的路徑,.. 代表當(dāng)前路徑的上一級路徑。這在UNIX和Windows系統(tǒng)意義是類似的。
例如:
以Winodws系統(tǒng)為例:
當(dāng)前路徑是F:\Temp, 則 . 的絕對路徑就是F:\Temp
.. 的絕對路徑就是F:
)
要獲得上級目錄的路徑也很簡單,print os.path.abspath('..')就可以了。
要改變當(dāng)前路徑,os.chdir(path) 就可以了 path里填要改變到的目錄,例如os.chdir('D:\Program Files')
這樣大部分的文件操作現(xiàn)在是相對于D:\Program Files 來了,例如fobj = open('Hello.txt'),實際會打開D:\Program Files\Hello.txt文件。

不要通過sys.argv[0]獲得當(dāng)前路徑,那是不正確的。sys.argv[0] 是當(dāng)前執(zhí)行的Python腳本的文件名,不一定是當(dāng)前的路徑。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容