首頁 > 易卦

python的檔案操作

作者:由 友兒的部落格 發表于 易卦日期:2023-01-28

只讀檔案可以列印嗎

在磁碟上讀寫檔案的功能都是由作業系統提供的,現代作業系統不允許普通的程式直接操作磁碟,所以,讀寫檔案就是請求作業系統開啟一個檔案物件,然後,透過作業系統提供的介面從這個檔案物件中讀取資料,或者把資料寫入這個檔案物件。

python檔案操作的一般步驟是:開啟檔案,讀取檔案/寫入檔案,關閉檔案三部分

python的開啟檔案操作:

python開啟檔案使用open函式,open函式可以接受兩個引數,第一個引數是檔案的路徑,第二個引數是檔案開啟的模式

檔案開啟模式有以下幾種,這些模式還可以組合使用:

python的檔案操作

如以只讀模式開啟一個檔案物件可以這樣寫:

python的檔案操作

檔案的關閉操作:

python的關閉操作很簡單,是用的是close()函式

python的檔案操作

python的讀檔案操作:

讀檔案操作是檔案操作指標根據讀取長度前移進行資料讀取的,常用的函式有:

read([size])

# size為讀取的長度,以byte為單位

python的檔案操作

呼叫read()會一次性讀取檔案的全部內容,有時候檔案很大,一次性讀取全部記憶體就爆了,所以,要保險起見,可以迴圈呼叫read(size)方法,每次最多讀取size個位元組的內容:

python的檔案操作

readline([size])

# 讀一行,如果定義了size,有可能返回的只是一行的一部分

python的檔案操作

每次一行,迴圈讀取,直到檔案末尾

python的檔案操作

readlines([size])

# 把檔案每一行作為一個list的一個成員,並返回這個list。其實它的內部是透過迴圈呼叫readline()來實現的。如果提供size引數,size是表示讀取內容的總長,也就是說可能只讀到檔案的一部分。

python的檔案操作

打印出來的內容是這樣子:

python的檔案操作

Python的寫操作:

python的寫入操作時,需要使用寫、讀寫或者追加的模式開啟檔案

write(str)

# 把str寫到檔案中,write()並不會在str後加上一個換行符

writelines(list)

# 把list的內容全部寫到檔案中(多行一次性寫入)。這個函式也只是忠實地寫入,不會在每行後面加上任何東西。

python的檔案操作

除了前面說的方法,檔案物件還有一些其它的屬性和方法:

python的檔案操作

python的檔案操作