Python文件讀寫

內(nèi)建函數(shù)open成功打開文件后會返回一個文件對象,否則會引發(fā)一個異常IOError:
file_object = open(file_name , access_mode = 'r' , buffering = -1),其中參數(shù)file_name是包含要打開的文件名字的字符串,它可以是相對路徑或者絕對路徑。參數(shù)access_mode的介紹如下:

access_mode content
r 以讀的模式打開(文件必須以存在)
rU或Ua 以讀模式打開(提供通用換行符支持)
w 以寫的模式打開(若文件存在清空原文件)
a 以追加模式打開(從EOF開始,必要創(chuàng)建新文件)
r+ 以讀寫模式打開(文件必須存在)
w+ 以讀寫模式打開(若文件存在,則清空原文件)
a+ 以讀寫追加模式打開(若文件不存在創(chuàng)建該文件,文件存在則寫入數(shù)據(jù)會被追加到文件尾)
rb 以二進制讀模式打開
wb 以二進制寫模式打開
ab 以二進制追加模式打開
rb+ 以二進制讀寫模式打開
wb+ 以二進制讀寫模式打開
ab+ 以二進制讀寫模式打開

open()成功返回文件對象之后返回一個文件對象,所有對該文件的后續(xù)操作都通過這個文件句柄:

輸入:

file_object.read(size)
#方法直接讀取字節(jié)到字符串中,最多讀取指定數(shù)目個字節(jié),如果沒有指定size或者指定值為負,文件將被讀至末尾
readline(size)
#方法讀取打開文件的一行。然后整行,包括行結束符符,作為字符串返回。如果設置了size參數(shù),如果在超過了size個字節(jié)后會返回不完整的行。

輸出:

file_object.write(string)
#方法將含有文本數(shù)據(jù)或二進制數(shù)據(jù)塊的字符串寫入到文件中。

移動:

file_object.seek(offset , from_what)
#可以在文件中移動文件指針到不同位置。offset字節(jié)代表相對于某個位置的偏移量,from_what的可選值為0,1,2
#0表示文件頭
#1表示當前位置
#2表示文件末尾

關閉文件:

file_object.close
#關閉文件

文件內(nèi)建方法

file_object.fileno()   返回文件的描述符
file_object.flush()    刷新文件的內(nèi)部緩沖區(qū)
file_object.isatty()   判斷file_object是否是一個類tty設備
file_object.tell()     返回當前在文件中的位置

文件內(nèi)建屬性

file_object.closed    表示文件已經(jīng)被關閉,否則為False
file_object.encoding    文件所使用的編碼------- 當Unicode字符串被寫入數(shù)據(jù)時,他們將自動使用 file.encoding 轉(zhuǎn)換為字節(jié)字符串,若file_object.encoding 為 None時使用系統(tǒng)的默認編碼
file_object.mode    Access文件打開使用的訪問模式
file_object.name     文件名

與文件系統(tǒng)相關的OS模塊方法

method description
remove(path)/unlink(path) 刪除文件(如果路徑是目錄,raiseOSError)
rename(src,dst)/renames(old,new) 重命名文件
walk(top,topdown=True,onerror=None,followlinks=False) 生成一個目錄樹下的所有文件
chdir(path) 改變當前工作目錄到path
listdir(path) 列出指定目錄的文件
getcwd() 返回當前工作目錄
mkdir(path[,mode]) 創(chuàng)建目錄,mode可選,文件權限描述符,默認0777
rmdir(path) 刪除目錄
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 一、read。 open(file, mode='r', buffering=-1, encoding=None,...
    舊__閱讀 461評論 0 0
  • 1 IO的含義 在計算機中,IO是Input/Output的簡寫,也就是輸入和輸出。 由于程序和運行時數(shù)據(jù)是在內(nèi)存...
    hufengreborn閱讀 27,837評論 2 13
  • 什么是文件: 計算機文件屬于文件的一種,與普通文件載體不同,計算機文件是以計算機硬盤為載體存儲在計算機上的信息集合...
    qtruip閱讀 700評論 0 0
  • 1、r 打開只讀文件,該文件必須存在。2、r+ 打開可讀寫的文件,該文件必須存在。3、w 打開只寫文件,若文件存在...
    sqoop閱讀 580評論 0 0
  • 1. 一般的讀寫文件方法 讀取文件 寫文件: 2. numpy讀寫文件 savetxt( ) 和 loadtxt(...
    Jarlon閱讀 1,892評論 0 2

友情鏈接更多精彩內(nèi)容