1. 程式人生 > >os.path和sys.path的相關用法

os.path和sys.path的相關用法

1.os.path

(1) os.path.abspath(path)

功能:返回path的絕對路徑
如:

print os.path.abspath('test.py')
#結果
/home/username/mytest/test.py

(2) os.path.dirname(path)

功能:去掉檔名,返回目錄
如:

print os.path.dirname('/home/username/mytest/test.py')
#結果
/home/username/mytest

特別的使用os.path.dirname(__file__)
__file__代表的是當前指令碼
如:

print __file__
#結果
test.py(指令碼以相對路徑執行) 
/home/username/mytest/test.py(指令碼以絕對路徑執行)

對應地

print os.path.dirname(__file__)
#結果
 (指令碼以相對路徑執行,返回空目錄)
 /home/username/mytest(指令碼以絕對目錄執行,返回絕對目錄) 

(3) os.path.basename(path)

功能:返回path最後的檔名,若path以/或\結尾,那麼就會返回空值。
如:

print os.path.basename('/home/username/mytest/test.py'
) #結果 test.py

(4) os.path.join(path1[, path2[, …]])

將多個路徑組合後返回,第一個絕對路徑之前的引數將被忽略。

>>> os.path.join('/home/username', 'mytest', 'test.py')
'/home/username/mytest/test.py' 

sys.path

注:sys.path模組是動態的改變python搜尋路徑。

(1) sys.path.insert(i, path)

i :代表的是把路徑放在搜尋順序的哪個位置,序號從0開始。
path:新增進搜尋目錄中的路徑。
一般使用:sys.path.insert(0, path),表示import的時候,優先搜尋後面這個路徑

(2) sys.path.append(path)

sys.path中新增路徑,新增在搜尋路徑的末尾,搜尋的時候,可能會檢查這個路徑。