python os.path與sys.path學習(一)

NO IMAGE

1.直接看程式碼:

# coding=utf-8
'''
Ubuntu 14.04 ,python 2.7
'''
import os
import os.path as osp
path1='/home/troy/1.py'
path2='/home/troy/2.py'
path3='~/2.py'
print os.path.abspath(path1) #返回絕對路徑    /home/troy/1.py
print os.path.basename(path1) #返回檔名       1.py
#os.path.commonprefix(list) #返回list(多個路徑)中,所有path共有的最長的路徑。
print os.path.commonprefix([path1,path2])         #/home/troy/
print os.path.dirname(path1) #返回檔案路徑          /home/troy
print os.path.exists(path1) #路徑存在則返回True,路徑損壞返回False          True
print os.path.lexists(path1)              #路徑存在則返回True,路徑損壞也返回True              True
print os.path.expanduser(path3)    #把path中包含的"~"和"~user"轉換成使用者目錄          #/home/troy/2.py
print os.path.expandvars(path1)    #根據環境變數的值替換path中包含的”$name”和”${name}”       /home/troy/1.py
print os.path.getatime(path1)      #返回最後一次進入此path的時間。                   1528728291.78
print os.path.getmtime(path1)      #返回在此path下最後一次修改的時間。
print os.path.getctime(path1)      #1528728320.19
print os.path.getsize(path1)       #返回檔案大小,如果檔案不存在就返回錯誤           #1622
print os.path.isabs(path1)         #判斷是否為絕對路徑  True
print os.path.isfile(path1)        #判斷路徑是否為檔案   True
print os.path.isdir(path1)         #判斷路徑是否為目錄  False
print os.path.islink(path1)        #判斷路徑是否為連結     False
print os.path.ismount(path1)       #判斷路徑是否為掛載點()  False

2.os.path.join()函式

語法:  os.path.join(path1[,path2[,……]])

返回值:將多個路徑組合後返回

注:第一個絕對路徑之前的引數將被忽略

# coding=utf-8
'''
Ubuntu 14.04 ,python 2.7
'''
import os
print "1:",os.path.join('aaaa','/bbbb','ccccc.txt')     #1: /bbbb/ccccc.txt
print "2:",os.path.join('/aaaa','/bbbb','/ccccc.txt') #2: /ccccc.txt
print "3:",os.path.join('aaaa','bbb','./ccccc.txt')    #3: aaaa/bbb/./ccccc.txt
print "4:",os.path.join('aaaa','/bbb','./ccccc.txt')       #4: /bbb/./ccccc.txt
print "5:",os.path.join('nan','/home','troy','1.py')      #5: /home/troy/1.py
print "6:",os.path.join('nan','/home','/troy','1.py')        #6: /troy/1.py

3.__file__使用:代表當前程式

import os
print os.path.abspath(__file__)    #/home/troy/1.py
print os.path.join('nan',__file__) #/home/troy/1.py

4.sys.path.append

python程式中使用 import XXX 時,python解析器會在當前目錄、已安裝和第三方模組中搜尋 xxx,如果都搜尋不到就會報錯。使用sys.path.append()方法可以臨時新增搜尋路徑,方便更簡潔的import其他包和模組。這種方法匯入的路徑會在python程式退出後失效。

import sys
sys.path.append('..') #表示匯入當前檔案的上層目錄到搜尋路徑中
sys.path.append('/home/troy') # 絕對路徑

import os, sys
sys.path.append(os.getcwd())  #加入當前目錄

sys.path.insert:

定義搜尋優先順序.sys.path.insert(1,”./crnn”)定義搜尋路徑的優先順序,序號從0開始,表示最大優先順序,sys.path.insert()加入的也是臨時搜尋路徑,程式退出後失效。

import sys
sys.path.insert(1, "./troy")   #優先順序為1