Python常用的文件操作方法

Python open() 方法用於打開一個文件,並返回文件對象,在對文件進行處理過程都需要使用到這個函數,如果該文件無法被打開,會拋出 OSError

函數 語法 意義
open open(file, mode=‘r’, buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) 打開一個文件,並返回文件對象
參數 意義
file 必需,文件路徑(相對或者絕對路徑)
mode 可選,文件打開模式
buffering 設置緩衝
encoding 一般使用utf8
errors 報錯級別
newline 區分換行符
closefd 傳入的file參數類型

下面列表主要就文件打開模式mode做了下說明

mode 意義
t 文本模式 (默認)
r 以只讀方式打開文件。文件的指針將會放在文件的開頭(默認)
+ 打開一個文件進行更新(可讀可寫)
x 寫模式,新建一個文件,如果該文件已存在則會報錯
b 二進制模式
w 打開一個文件只用於寫入,如果該文件已存在則打開文件,並從開頭開始編輯,即原有內容會被刪除;如果該文件不存在,創建新文件
a 打開一個文件用於追加,如果該文件已存在,文件指針將會放在文件的結尾,也就是說,新的內容將會被寫入到已有內容之後;如果該文件不存在,創建新文件進行寫入

以上的幾種mode可以組合,比如rb,r+,rb+,wb,w+,wb+,ab,a+,ab+等等

open文件產生的對象file有以下常用的函數

函數 意義
file.close() 關閉文件,關閉後文件不能再進行讀寫操作
file.flush() 刷新文件內部緩衝,直接把內部緩衝區的數據立刻寫入文件, 而不是被動的等待輸出緩衝區寫入
file.fileno() 返回一個整型的文件描述符(file descriptor FD 整型), 可以用在如os模塊的read方法等一些底層操作上
file.read([size] 從文件讀取指定的字節數,如果未給定或爲負則讀取所有
file.readline([size]) 讀取整行,包括 “\n” 字符
file.readlines([sizeint]) 讀取所有行並返回列表,若給定sizeint>0,返回總和大約爲sizeint字節的行, 實際讀取值可能比 sizeint 較大, 因爲需要填充緩衝區
file.seek(offset[, whence]) 移動文件讀取指針到指定位置
file.tell() 返回文件當前位置
file.truncate([size]) 從文件的首行首字符開始截斷,截斷文件爲 size 個字符,無 size 表示從當前位置截斷;截斷之後後面的所有字符被刪除,其中 Widnows 系統下的換行代表2個字符大小
file.write(str) 將字符串寫入文件,返回的是寫入的字符長度
file.writelines(sequence) 向文件寫入一個序列字符串列表,如果需要換行則要自己加入每行的換行符
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章