Python之檔案操作 檔案 目錄的操作

2022-09-02 11:09:07 字數 1979 閱讀 1804

一、建立

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操作檔案和目錄

對檔案和目錄進行操作是在我們開發過程中必不可少的一環,下面是我整理的一些常用的對檔案和目錄進行操作的語句,希望能幫到你 首先是導包,匯入包os import os 1 獲取當前python指令碼工作的檔案目錄 os.getcwd 2 返回指定目錄下的所有檔名和目錄 os.listdir 3 刪除乙個...

python 操作檔案和目錄

python的 os 模組 import osos.name 作業系統型別 如果是 posix 說明系統是linux unix或mac os x,如果是 nt 就是windows系統。os.uname 作業系統詳情uname 函式在windows上不提供,也就是說,os 模組的某些函式是跟作業系統相...

python, 操作檔案和目錄

作業系統提供的命令只是簡單地呼叫了作業系統提供的介面函式,python內建的os模組也可以直接呼叫作業系統提供的介面函式 importos 作業系統型別 os.name posix linux unix或mac os x,nt windows系統 要獲取詳細的系統資訊,windows上不提供 os....