1. 程式人生 > >python 文件處理

python 文件處理

沒有 PE 打開文件 nco python run 句柄 size AD

一、文件操作

打開文件時,需要指定文件路徑和以何等方式打開文件,打開後,即可獲取該文件句柄,日後通過此文件句柄對該文件操作。

打開文件的模式有:

  • r ,只讀模式【默認模式,文件必須存在,不存在則拋出異常】
  • w,只寫模式【不可讀;不存在則創建;存在則清空內容】
  • x, 只寫模式【不可讀;不存在則創建,存在則報錯】
  • a, 追加模式【可讀; 不存在則創建;存在則只追加內容】

"+" 表示可以同時讀寫某個文件

  • r+, 讀寫【可讀,可寫】
  • w+,寫讀【可讀,可寫】
  • x+ ,寫讀【可讀,可寫】
  • a+, 寫讀【可讀,可寫】

"b"表示以字節的方式操作

  • rb 或 r+b
  • wb 或 w+b
  • xb 或 w+b
  • ab 或 a+b

註:以b方式打開時,讀取到的內容是字節類型,寫入時也需要提供字節類型,不能指定編碼

Table 文件對象方法

方法 描述
f.close() 關閉文件,記住用open()打開文件後一定要記得關閉它,否則會占用系統的可打開文件句柄數。
f.fileno() 獲得文件描述符,是一個數字
f.flush() 刷新輸出緩存
f.isatty() 如果文件是一個交互終端,則返回True,否則返回False。
f.read([count]) 讀出文件,如果有count,則讀出count個字節。
f.readline() 讀出一行信息。
f.readlines() 讀出所有行,也就是讀出整個文件的信息。
f.seek(offset[,where]) 把文件指針移動到相對於where的offset位置。where為0表示文件開始處,這是默認值 ;1表示當前位置;2表示文件結尾。
f.tell() 獲得文件指針位置。
f.truncate([size]) 截取文件,使文件的大小為size。
f.write(string) 把string字符串寫入文件。
f.writelines(list) 把list中的字符串一行一行地寫入文件,是連續寫入文件,沒有換行。


read(3)代表讀取3個字符,其余的文件內光標移動是以字節為單位,如:seek,tell,read,truncate

f.flush() #講文件內容從內存刷到硬盤(python3.x)

f.closed #文件如果關閉則返回True

f.encoding #查看使用open打開文件的編碼

f.tell() #查看文件處理當前的光標位置

f.seek(3) #從開頭開始算,將光標移動到第三個字節

f.truncate(10) #從開頭開始算,將文件只保留從0-10個字節的內容,文件必須以寫方式打開,但是w和w+除外。

對文件操作的流程

  1. 打開文件,得到文件句柄並賦值給一個變量
  2. 通過句柄對文件進行操作
  3. 關閉文件

python 文件處理