Python之文件操作:文件、目錄的操作
阿新 • • 發佈:2017-06-13
繼續 不存在 write 表示 結構 src true 所在 txt 一、創建
1、創建文件
open(path,‘w‘)
2、創建目錄
(1)os.mkdir(pt[, mode=0777])
新建一個目錄pt,參數mode表示生成的目錄的權限,默認是超級權限,也就是0777。
(2)os.makedirs(pt) 創建多級目錄 比如在python目錄下創建\t1\t2\t3
3、創建臨時文件
os.tmpfile() 已“w+b”的模式創建並打開一個臨時文件。
緩存在內存中,不占用內存空間。用完不用刪除,close()之後就不存在了
fp=os.tmpfile()
fp.write(‘fjwioe‘)
fp.seek(0)
print fp.read()
fp.close()
二、刪除
1、刪除文件
os.remove(‘e:\\tmp\\01.txt’) 刪除一個文件
刪除一個指定的文件,參數filePath表示文件所在的路徑。
註意:該方法只能刪除文件,不能刪除目錄。
2、刪除目錄
(1)os.rmdir()
刪除單級空目錄,若目錄不為空則無法刪除,會報錯
(2)os.removedirs(‘e:\\python\\t1\\t2\\t3‘)刪除多級目錄
三、文件和目錄的復制和移動
import shutil
復制或者移動一個文件,目錄結構
1、shutil.copyfile(path1,path2) 復制文件
把文件path1的內容copy到文件path2中
2、shutil.move(path1,path2) 移動文件,文件夾
把文件path1移動到path2下
3、shutil.copy(path1,path2) 復制文件,文件夾
把文件path1復制到path2下
4、shutil.copytree(path1,path2) 復制整個目錄結構
把path1 目錄整個復制到path2下
5、shutil.rmtree( src )
遞歸刪除一個目錄以及目錄內的所有內容
四、遍歷文件和目錄
1、os.walk(top,topdown=True,oneerror=None,folowlinks=False)
top:根節點
followlinks:一般不用
topdown=true 自頂而下的遍歷
oneerror:沒有值的時候,出現錯誤還會繼續遍歷
遍歷文件和目錄,返回結果是一個元祖類型
for i,j,k in os.walk(‘d:\\tmp‘)
i:返回當前的目錄根節點
j:當前結點的下的所有目錄
k:當前結點下的所有文件
沒有值得情況,返回[]
eg:
for i,j,k in os.walk(‘d:\\tmp‘):
print i
print j
print k
結果:
d:\tmp
[]
[‘test13.txt‘]
2、os.path.walk(top,func,arg)
python3以上就不支持這種遍歷方式,不建議使用
func(arg,dirname,files):回調函數
arg:os.path.walk()中的arg
dirname:根目錄
files:列表,所有的文件和文件夾
def findFile(arg, dirname, files):
print ‘*****************************‘
print arg
print dirname
print files
os.path.walk(‘e:\\tmp‘,findFile,(1,2))
3、os.listdir(‘e:\\tmp‘)
列出指定目錄下的所有文件和子目錄,包括隱藏文件或目錄,並以列表形式返回。
Python之文件操作:文件、目錄的操作