Python文件路徑具體操作方法經典講解
Python編程語言在實際使用中可以幫助我們輕松的實現一些特殊的功能需求。在這里我們將會為大家詳細介紹一下有關Python文件路徑的相關操作技巧,從而方便我們在實際開發(fā)中獲得一些幫助。
Python文件路徑操作方法之1: os.listdir(path) //path為目錄
功能相當于在path目錄下執(zhí)行dir命令,返回為list類型。舉例:
- print os.listdir(’..’)
輸出:
- [a,b,c,d]
Python文件路徑操作方法之2: os.path.walk(path,visit,arg)
path :是將要遍歷的目錄
visit :是一個函數指針,函數圓形為:
- callback(arg,dir,fileList)
其中arg為為傳給walk的arg , dir是path下的一個目錄,fileList為dir下的文件和目錄組成的list
arg:傳給visit用的,對walk沒有什么作用
舉例:
- def callback(arg,directory, files):
- print directory,
- print files,
- print arg
- print ‘——————–’
- os.path.walk(’.',callback, ‘123456′)
輸出:
- . ['path0704.py', 'temp', '\xc2\xb7\xbe\xb6\xcf\xe0\xb9\
xd8\xd1\xa7\xcf\xb0.txt'] 123456- ——————–
- .\temp ['temp.h', 'temp1'] 123456
- ——————–
- .\temp\temp1 ['abc.bmp'] 123456
如果想找到某個目錄下所有文件,只需要在callback里面,在fileList中找出文件,即可
除此之外,還有一個函數可以用那就是os.walk,看10
Python文件路徑操作方法之3:os.path.split(path)
path 為一個路徑,輸出,把path分成兩部分,具體看實例:
- print os.path.split(”abc/de.txt”)
- (’abc’, ‘de.txt’)
- os.path.split(”abc”)
- (”, ‘abc’)
- print os.path.split(”de/abc/de”)
- (’de/abc’, ‘de’)
Python文件路徑操作方法之4: os.path.splitext(filename)
把文件名分成文件名稱和擴展名
- os.path.splitext(abc/abcd.txt)
- (’abc/abcd’, ‘.txt’)
Python文件路徑操作方法之5: os.path.dirname(path)
把目錄名提出來
- print os.path.dirname(”abc”)
- #輸出為空
- print os.path.dirname(’abc\def’)
- abc
Python文件路徑操作方法之6: os.path.basename(filename)
取得主文件名
- print os.path.basename(’abc’)
- abc
- print os.path.basename(’abc.txt’)
- abc
- print os.path.basename(’bcd/abc’)
- abc #這個需要注意不包括目錄名稱
- print os.path.basename(’.')
Python文件路徑操作方法之7:os.mkdir(path, [mode])#t#
path為目錄名: 這里有個要求,只能創(chuàng)建一級目錄。比如path為 abc/def 則當前目錄下必須存在abc 否則失敗
Python文件路徑操作方法之8: os.makedirs(path [,mode])
可以創(chuàng)建多級目錄
Python文件路徑操作方法之9:os.remove(path)
刪除一個文件,一定是一個文件
- os.removedirs(path) 刪除一個目錄下所有東西
- os.rmdir(path) 刪除一個目錄,而且一定要空,否則os.errer
Python文件路徑操作方法之10:os.walk(path)
遍歷path,返回一個對象,他的每個部分都是一個三元組(’目錄x’,[目錄x下的目錄list],目錄x下面的文件)
舉例:
- a = os.walk(’.')
- for i in a:
- print i
輸出:
- (’.', ['abc', 'temp'], ['path0704.py', '\xc2\xb7\xbe\xb6\xcf\
xe0\xb9\xd8\xd1\xa7\xcf\xb0.txt'])- (’.\\abc’, [], ['\xd0\xc2\xbd\xa8 BMP \xcd\xbc\xcf\xf1.bmp'])
- (’.\\temp’, ['temp1'], ['temp.h'])
- (’.\\temp\\temp1′, [], ['abc.bmp'])
Python文件路徑操作方法之11:shutil.copy(src,dst)
把文件src內容拷貝到文件dst中。,目標區(qū)域必須可以寫,如果dst存在,則dst被覆蓋
上面的Python文件路徑的函數基本夠用
其它文件移動操作還請看:shutil模塊:High-level file operations


2010-02-02 17:13:35
2010-02-03 13:26:53
2010-08-02 12:34:09
2010-08-02 17:20:12




