一、文件讀取
對於Python的文件讀取操作,我們可以使用open()函數來打開一個文件,然後將其讀取到內存中。在調用open()函數時需要指定文件名以及文件打開的方式。讀取文件的方式有兩種:文本模式和二進位模式。
文本模式下的打開方式:
>>> f = open('file.txt', 'r')
這裡的’r’表示讀取模式;如何文件不存在也會報錯,你也可以使用’w’來表示寫入模式,如果文件不存在則會新建;使用’a’來表示追加模式,則表示每次寫入時都會在文件的結尾處進行追加。
二進位模式下的打開方式:
>>> f = open('file.txt', 'rb')
這裡的’rb’表示二進位讀取模式;在讀寫圖片、視頻等二進位數據時,需要使用二進位模式。
如果文件已經打開,則會報錯,因此我們需要在文件讀寫完畢後,記得關閉文件。
f.close()
二、文件寫入
文件寫入是將程序中的數據寫入到文件中,同樣也是使用open()函數打開指定的文件,然後使用write()方法進行寫入操作。
>>> f = open('file.txt', 'w')
>>> f.write('Hello world!')
>>> f.close()
寫入內容在file.txt文件中為:Hello world!
三、讀寫文件偏移量
在對文件進行讀寫操作時,文件中的每一位都有一個位置偏移量,我們可以使用seek()方法進行定位。例如,在文本文件中,每個英文字元佔用一個位元組長度,我們需要將讀取文件的位置每次向後偏移一個位元組長度。
>>> f = open('file.txt', 'r')
>>> f.read(5)
'Hello'
>>> f.seek(0)
0
>>> f.read(2)
'He'
>>> f.close()
這裡的f.read(5)表示讀取前5個字元;f.seek(0)表示將讀取的位置置為0,即文件的起始位置;f.read(2)表示再次讀取文件前2個字元。
四、with語句處理文件
為了避免忘記關閉文件或者發生意外時的異常處理,我們可以使用with語句去打開文件,以便在處理完成後,自動將文件關閉。
with open('file.txt', 'r') as f:
print(f.read())
這裡的with語句可以在文件讀寫完成後自動關閉文件。如果讀寫文件時沒有出現異常,則自動文件關閉。如果出現了異常,則還是需要人工將文件關閉。
五、代碼示例
將上述的文件讀取、文件寫入、讀寫文件偏移量、with語句處理文件的內容集成在一起:
with open('file.txt', 'w') as f:
f.write('Hello world!')
f.seek(6)
f.write('Python')
with open('file.txt', 'r') as f:
print(f.read())
在文件讀寫操作時,需仔細檢查文件打開的方式和文件的路徑,以避免不必要的麻煩。這裡的示例代碼中包含文件的多種操作方式,可以在實際使用時靈活運用。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/157320.html