Python中open函式怎麼操作檔案 9

2022-07-08 06:42:11 字數 3004 閱讀 8518

**

在 python 中,如果想要操作檔案,首先需要建立或者開啟指定的檔案,並建立乙個檔案物件,而這些工作可以通過內建的 open() 函式實現。

open() 函式用於建立或開啟指定檔案,該函式的常用語法格式如下:

file = open(file_name [, mode='r' [ , buffering=-1 [ , encoding = none ]]])

此格式中,用 括起來的部分為可選引數,即可以使用也可以省略。其中,各個引數所代表的含義如下:

file_name:要建立或開啟檔案的檔名稱,該名稱要用引號(單引號或雙引號都可以)括起來。需要注意的是,如果要開啟的檔案和當前執行的**檔案位於同一目錄,則直接寫檔名即可;否則,此引數需要指定開啟檔案所在的完整路徑。

mode:可選引數,用於指定檔案的開啟模式。可選的開啟模式(如下方**)所示。如果不寫,則預設以唯讀(r)模式開啟檔案。

buffering:可選引數,用於指定對檔案做讀寫操作時,是否使用緩衝區(本節後續會詳細介紹)。

encoding:手動設定開啟檔案時所使用的編碼格式,不同平台的 ecoding 引數值也不同,以 windows 為例,其預設為 cp936(實際上就是 gbk 編碼)。

open() 函式支援的檔案開啟模式如下:

模式

描述

r唯讀模式開啟檔案,讀檔案內容的指標會放在檔案的開頭。

rbr+

開啟檔案後,既可以從頭讀取檔案內容,也可以從開頭向檔案中寫入新的內容,寫入的新內容會覆蓋檔案中等長度的原有內容。

rb+以二進位制格式、採用讀寫模式開啟檔案,讀寫檔案的指標會放在檔案的開頭,通常針對非文字檔案(如音訊檔案)。

w以只寫模式開啟檔案,若該檔案存在,開啟時會清空檔案中原有的內容。

wb以二進位制格式、只寫模式開啟檔案,一般用於非文字檔案(如音訊檔案)

w+開啟檔案後,會對原有內容進行清空,並對該檔案有讀寫許可權。

wb+以二進位制格式、讀寫模式開啟檔案,一般用於非文字檔案

a以追加模式開啟乙個檔案,對檔案只有寫入許可權,如果檔案已經存在,檔案指標將放在檔案的末尾(即新寫入內容會位於已有內容之後);反之,則會建立新檔案。

ab以二進位制格式開啟檔案,並採用追加模式,對檔案只有寫許可權。如果該檔案已存在,檔案指標位於檔案末尾(新寫入檔案會位於已有內容之後);反之,則建立新檔案。

a+以讀寫模式開啟檔案;如果檔案存在,檔案指標放在檔案的末尾(新寫入檔案會位於已有內容之後);反之,則建立新檔案。

ab+以二進位制模式開啟檔案,並採用追加模式,對檔案具有讀寫許可權,如果檔案存在,則檔案指標位於檔案的末尾(新寫入檔案會位於已有內容之後);反之,則建立新檔案。

一、建立檔案

file = open('hello.txt','w')

執行結果會在當前執行指令碼的目錄下會建立乙個hello.txt檔案。

二、寫入檔案

file = open('hello.txt','w')

print(file.write('碼農部落格\n')) # .write()方法是往檔案裡寫入內容

file.close() # .close()方法是將檔案關閉

執行結果:

15

執行結果的5是告訴我們一共寫入了5個字元。但是你開啟檔案看會出現亂碼,這要怎麼解決呢?

file = open('hello.txt','w',encoding='utf-8')        # 將編碼設定成utf-8編碼

print(file.write('碼農部落格\n'))

file.close()

這個時候你再開啟檔案,顯示就是正常的。

三、讀取檔案

讀取檔案中的全部內

file = open('hello.txt','r',encoding='utf8')

print(file.read()) # read方法是讀取檔案中全部內容

執行結果:

1碼農部落格

逐行讀取檔案的內容

file = open('hello.txt','r',encoding='utf8')

print(file.readline()) # readline方法是逐行讀取檔案中的內容

執行結果:

1碼農部落格

如果要列印第二行內容的話,那就再寫一次「print(file.readline())」。

讀取檔案中全部內容並返回成列表

file = open('hello.txt','r',encoding='utf8')

print(file.readlines()) # readlines方法是讀取檔案中所有內容,返回乙個列表,並將每行內容當成列表中的乙個元素

執行結果:

['碼農部落格\n']

四、with上下文

如果怕檔案開啟後忘記關閉,可以使用with上下文,再執行完with下的**之後,檔案會自動關閉。

with open('hello.txt','r',encoding='utf8') as f:    # as是給檔案臨時取名叫f

print(f.readlines())

執行結果:

['碼農部落格\n']

Python中open函式怎麼操作檔案

在 python 中,如果想要操作檔案,首先需要建立或者開啟指定的檔案,並建立乙個檔案物件,而這些工作可以通過內建的 open 函式實現。open 函式用於建立或開啟指定檔案,該函式的常用語法格式如下 file open file name mode r buffering 1 encoding n...

python中的open函式

這裡簡單記錄一下python中的with open 函式中的引數設定 python的open方法用來開啟乙個檔案。第乙個引數是檔案的位置和檔名,第二個引數是讀寫模式。這裡我們採用w模式,也就是寫模式。在這種模式下,檔案原有的內容將會被刪除。其中對於第二個引數 ru 或 ua 以讀方式開啟,同時提供通...

python 學習 open 函式

open 函式 一般情況下,使用open 函式時只需要調入檔名引數,而不新增其它任何引數,就可以獲取檔案內容。相反,如果要向檔案中新增資訊,就必須制定乙個模式引數,用來宣告它準備做什麼,這個模式引數才是open 的靈魂。以下下 是open 函式的使用語法 open name mode bufferi...