Python技術分享之檔案讀寫操作的知識點詳解

2021-10-06 17:28:38 字數 1831 閱讀 1412

python是隨著人工智慧時代的來臨而火爆起來的程式語言,入門簡單、功能強大,吸引了人們的廣泛學習加入。想要學好python,一定要從基礎學起,然後高階深入學習,今天就給大家分享python入門教程中檔案處理的讀、寫操作。

注意,在python中,不需要匯入外部庫來讀取和寫入檔案,因為python為建立、寫入和讀取檔案提供了內建的函式。

讀檔案開啟乙個檔案用open()方法(open()返回乙個檔案物件,它是可迭代的):

f = open(『test.txt』, 『r』)

r表示是文字檔案,rb是二進位制檔案(這個mode引數預設值就是r)。如果檔案不存在,open()函式就會丟擲乙個ioerror的錯誤,並且給出錯誤碼和詳細的資訊告訴你檔案不存在。

檔案使用完畢後必須關閉,因為檔案物件會占用作業系統的資源,並且作業系統同一時間能開啟的檔案數量也是有限的。

f.close()

由於檔案讀寫時都有可能產生ioerror,一旦出錯,後面的f.close()就不會呼叫。所以為了保證無論是否出錯都能正確地關閉檔案,我們可以使用try … finally來實現。

python檔案物件提供了三個「讀」方法: read()、readline() 和readlines()。每種方法可以接受乙個變數以限制每次讀取的資料量。

read() 每次讀取整個檔案,它通常用於將檔案內容放到乙個字串變數中。如果檔案大於可用記憶體,為了保險起見,可以反覆呼叫read(size)方法,每次最多讀取size個位元組的內容。

readlines() 之間的差異是後者一次讀取整個檔案,像.read() 一樣。.readlines() 自動將檔案內容分析成乙個行的列表,該列表可以由 python的for … in …結構進行處理。

readline() 每次只讀取一行,通常比readlines() 慢得多。僅當沒有足夠記憶體可以一次讀取整個檔案時,才應該使用readline()。

寫檔案

f = open(『test.txt』, 『w』) # 若是』wb』就表示寫二進位制檔案

f.write(『hello, world!』)

f.close()

我們可以反覆呼叫write()來寫入檔案,但是務必要呼叫f.close()來關閉檔案。忘記呼叫close()的後果是資料可能只寫了一部分到磁碟,剩下的丟失了。因此還是用with語句來得保險:

with open(『test.txt』, 『w』) as f:

f.write(『hello, world!』)

python檔案物件提供了兩個「寫」方法:write()和writelines()。

write()方法和read()、readline()方法對應,是將字串寫入到檔案中。

writelines()方法和readlines()方法對應,也是針對列表的操作。它接收乙個字串列表作為引數,將他們寫入到檔案中,換行符不會自動的加入,因此,需要顯式的加入換行符。

檔案處理的型別:

只要處理型別加上b(bytes),表示只這樣操作(一般不知道寫入編碼的時候用);

『r』(讀) :讀取出來的內容為字串型別;

『rb』(唯讀):以二進位制的方式讀取;

』r+『(可讀寫):以讀的方式開啟,支援寫入;

『w』(寫入) :建立新內容,覆蓋舊內容;

'w+』(寫讀):以建立的模式開啟,支援讀取;

讀寫和寫讀指標都會停在最後(讀寫,不可讀取剛寫內容,寫讀:可以讀取剛寫的內容)。

以上就是我總結的python檔案處理的讀、寫操作相關知識。

python常用技術之檔案讀寫

讀檔案 f open e pythonwork hello hello.py content f.read 一般不會用read 因為這玩意可能整死系統 正確的姿勢是 按照檔案大小塊來讀 一部分一部分讀 f open e pythonwork hello hello.py while true 用個迴...

python之讀寫檔案

fr open readfile.txt r fw open writefile.txt w print fr.readline print fr.tell print fr.readlines fw.write write line fw.close fr.seek 0,0 第乙個引數代表位元組數...

Python之檔案讀寫

本文介紹python語言中的對於檔案的讀寫等操作。本文使用python3 首先是對檔案的操作流程為 1.開啟檔案,得到檔案控制代碼並賦值給乙個變數 2.通過控制代碼對檔案進行操作 3.關閉檔案 對於檔案的操作就離不開open 函式 這個函式是python的io模組中的乙個內建函式 首先建議使用hel...