一、使用open()函數打開文件
Python提供了內置的open()函數,用於打開並創建文件。其語法如下:
f = open(file, mode)
其中,file是文件名(可以包含路徑),mode表示打開文件的模式,包括:
‘r’:讀模式(默認)
‘w’: 寫模式,如果文件不存在則創建文件,如果存在則截斷文件
‘a’: 追加模式,如果文件不存在則創建文件
‘b’: 二進位模式
‘t’: 文本模式(默認)
‘x’: 創建並寫入新文件
下面是一個例子,創建一個新文件並寫入內容:
with open('myfile.txt', 'w') as f: f.write('Hello, world!')
這個例子中,我們打開一個名為myfile.txt的文件,並指定打開模式為寫模式(’w’)。如果該文件不存在,則會創建一個新的文件,如果已經存在,則會清空文件內容並打開文件以供寫入。我們使用了with語句來自動關閉文件,以便在代碼塊執行結束時釋放資源。
二、使用write()方法寫入文件
open()函數打開文件後,我們就可以使用其返回的文件對象f來寫入文件。其中,write()方法用於寫入數據。如果我們打開文件的模式是’w’或’x’,則可以使用write()方法寫入數據。例如:
with open('myfile.txt', 'w') as f: f.write('Hello, world!')
在上面的代碼中,我們使用write()方法向文件中寫入了Hello, world!這行字元串。當我們運行此代碼後,我們可以在當前目錄下找到名為myfile.txt的文件,並打開它看到裡面已經寫入了我們想要的內容。
三、使用writelines()方法寫入多行數據
如果我們想要一次性寫入多行數據,可以使用writelines()方法。這個方法接受一個列表或可迭代對象,每個元素都是一行字元串,它將它們寫入文件,例如:
lines = ['Hello, world!\n', 'Python is awesome!\n', 'We love programming!\n'] with open('myfile.txt', 'w') as f: f.writelines(lines)
在上面這個例子中,我們定義了一個包含多個字元串的列表lines,然後使用writelines()方法將列表中的每個元素都寫入文件。
需要注意的是,每行字元串都應該以\n結尾,表示換行。否則它們將被寫成一行。
四、使用seek()方法移動文件指針
我們可以使用seek()方法在文件中移動指針。指針是一個文件內部的位置標記,它指示了下一次讀或寫會發生在什麼位置。seek()方法接受一個整數參數,表示要移動的位元組數。這個參數可以是正數、負數和零。
假設我們已經打開了一個文件,並寫入了一些數據:
with open('myfile.txt', 'w') as f: f.write('Hello, world!')
現在,我們可以使用seek()方法向後移動指針:
with open('myfile.txt', 'r+') as f: f.seek(6) f.write('Python')
在這個例子中,我們打開了文件,並將打開模式設置為’read+’。這意味著我們既可以讀取文件內容,也可以寫入內容。
然後,我們使用seek(6)方法將指針移動到位置6(即文件中的’w’字母)。接下來,我們使用write(‘Python’)方法覆蓋了’world’中的’w’。
五、使用truncate()方法截斷文件
truncate()方法可以截斷文件,即刪除指定位置之後的所有內容。例如,我們可以從文件的開頭開始截斷:
with open('myfile.txt', 'r+') as f: f.truncate(5)
在這個例子中,我們使用truncate()方法從文件的開頭開始截斷,並將文件的大小截斷為5個字元。這意味著,’Hello’將作為文件的唯一內容。
六、關閉文件
打開文件後,Python將為其分配內存和其他資源。因此,當我們完成對文件的操作時,應該關閉文件以釋放資源。
為了簡化這個過程,我們可以使用Python的with語句來處理文件。在with語句的代碼塊中,文件將自動關閉:
with open('myfile.txt', 'w') as f: f.write('Hello, world!')
在with語句的塊之外訪問文件將導致操作系統資源泄漏,造成程序崩潰。
原創文章,作者:AHRE,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/144723.html