標籤:
#檔案系統標準庫學習
import os,os.path
os.path#平台獨立檔案/檔案名稱管理
#以下給出一些常用的os模組下面使用的方法,如下:
"""
1:os.sep--路徑各部分之間分隔字元,如:/,\
2:os.extsep 檔案名稱與檔案<副檔名>之間分隔字元,如:.
3:os.pardir 檔案路徑中表示分類樹上一級的部分,如:..
4:os.curdir 檔案路徑指示目前的目錄部分,如:.
5:split()將函數分解成2部分:然後一個元組,這個元組的最後一個路徑是第二元素,第一個
元素則是最後這個部分之前的所有內容
其中以前部分都運用用字串,但這些函數並不要求(路徑是真實存在的)
"""
#注意:可能和標準庫上面的例子不同,因為它給的路徑,我這邊沒有
#例1
def path(p):
p=(p)
for i in p:
print ‘%15s:%s‘%(i,os.path.split(i))
#注意:os.sep結尾時,路徑最後一個元素,是一個空串
def path(p):
p=(p)
for i in p:
print ‘%15s:%s‘%(i,os.path.basename(i))
#整個路徑會剝除到只剩下最後一個元素,不管是檔案還是目錄,如果路徑以目錄分隔字元結尾(os.sep),則認為基本為空白.
#dirname()會返回第一部分路徑,如果和basename()結合可以得到原來的路徑
#dirname(path)
def path(p):
p=(p)
for i in p:
print ‘%15s:%s‘%(i,os.path.dirname(i))
#splitext()作用和split()類似,不過它會根據副檔名分隔字元而不是目錄分隔字元來分解路徑
def path(p):
p=(p)
for i in p:
print ‘%15s:%s‘%(i,os.path.splitext(i))
#查詢副檔名時,只使用os.extsep的最後一次出現,如果一個檔案名稱有多個副檔名,分解這個檔案名稱時,部分副檔名會留在首碼上
#commonprefix()取一個路徑列表作為參數,返回一個字串,表示所有路徑中都出現的公用首碼,這個值可能表示一個根本不存在的路徑,而且並不考慮路徑分隔字元,這個首碼可能並不落在一個分隔字元邊界上。
def path(p):
p=(p)
for i in p:
print ‘%15s:%s‘%(i,os.path.commonprefix(i))
#建立路徑
#結合路徑:使用join()#拿一個不存在的檔案路徑作為例子
def joins(path1,path2):
for path3 in [(path1,path2)]:
print path3,os.path.join(*path3)
path1=‘d:\\a‘
path2=‘cc‘
joins(path1,path2)
#如果連續的某個參數以os.sep開頭,前面所有的參數都會被丟棄,這個新參數會成為傳回值的開始部分
#處理<可變>的路徑:自動擴充
for user in [‘‘,‘admin‘,‘accpet‘,‘password‘]:
temp=‘~‘+user
print ‘%12s:%s‘%(temp,os.path.expanduser(temp))
#如果使用者主目錄無法找到,則字串不做任何改動直接返回
#expandvars()更為通用,它會擴充路徑中出現的所有shell環境變數
os.environ[‘MYVAR‘]=‘VALUE‘
print os.path.expandvars(‘/path/to/$MYVAR‘)
python os.path標準庫基礎學習1