檔案操作的步驟:
開啟檔案-> 操作檔案-> 關閉檔案
切記:最後要關閉檔案(否則可能會有意想不到的結果)
檔案句柄= open('檔案路徑', '模式')
指定檔案編碼
檔案句柄= open ('檔案路徑','模式',encoding='utf-8')
為了防止忘記關閉文件,可以使用上下文管理器來開啟檔案
with open('檔案路徑','模式') as 檔案句柄:
開啟檔案的模式有:
r,唯讀模式(預設)。
w,只寫模式。 【不可讀;不存在則建立;存在則刪除內容;】
a,追加模式。 【可讀; 不存在則創建;存在則只追加內容;】
r+,可讀寫檔案。 【可讀;可寫;可追加】
w+,寫讀
"U"表示在讀取時,可以將\r \n \r\n自動轉換成\n (與r 或r+ 模式同使用)
rU
r+U
"b"表示處理二進位檔案(如:FTP發送上傳# ISO鏡像文件,linux可忽略,windows處理二進位時需標註)
rb
wb
ab
檔案句柄.close()
操作檔:
detach
#佔位
fileno(傳回檔案描述子,用於底層作業系統的I/O 操作)
fid = 檔案句柄.fileno()
print#(fid)
flush(刷新緩衝區,將緩衝區中的資料立刻寫入檔案)
檔案句柄.flush()
isatty(判斷文件是否連接到一個終端設備,返回布林值)
檔案句柄.isatty()
read(從檔案中讀取指定的字元數,預設讀取全部)
str = 檔案句柄.read() #讀取整個檔案
str1 = 檔案句柄.read(10) #讀取檔案前10個字元
# readable(判斷檔案是否可讀,返回布林值)
檔案句柄.readable()
readline(每次最多讀取一行數據,每行的最後包含換行符號'\n')
print(檔案句柄.readline()) #讀取第一行資料
print(檔案句柄.readline(3)) #讀取第二行前3個字元
print(檔案句柄.readline()) #讀取第二行剩餘字元
print(檔案句柄.readline()) #讀取第三行
seek(移動檔案讀取的指針,如果檔案包含中文,移動指針必須是3的倍數,不然會報錯,因為一個中文字元等於3個位元組)
文件句柄.seek(6)
seekable(判斷檔案指標是否可用,返回布林值)
檔案句柄.seekable()
tell(取得指標位置)
檔案句柄.tell()
truncate(截斷,把指標後面的內容刪除,並寫入文件,要在可寫模式下操作)
f = open( 'text.txt','r+',encoding='utf-8')
f.seek(9) #把指標移到第9個位元組後面(即第3個中文後面)
f.truncate() #把第3個中文後面的字元刪除,並寫入檔案
f.close()
writable(判斷檔案是否可寫,返回布林值)
檔案句柄.writable()
write(把字串寫入文件,並傳回字元數)
檔案句柄.write('字串')
以上是Python3 檔案操作詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!