溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用Python open函數(shù)打開指定文件

發(fā)布時間:2020-09-10 18:04:03 來源:億速云 閱讀:732 作者:Leah 欄目:編程語言

如何使用Python open函數(shù)打開指定文件?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

掌握了各種操作目錄字符串或目錄的函數(shù)之后,接下來可以準備讀寫文件了。在進行文件讀寫之前,首先要打開文件。

Python 提供了一個內(nèi)置的 open() 函數(shù),該函數(shù)用于打開指定文件。

open() 函數(shù)的語法格式如下:

open(file_name [, access_mode] [, buffering])

在上面的語法格式中,只有第一個參數(shù)是必需的,該參數(shù)代表要打開文件的路徑。access_mode 和 bufering 參數(shù)都是可選的。

在打開文件之后,就可調(diào)用文件對象的屬性和方法了。文件對象支持如下常見的屬性:

file.closed:該屬性返回文件是否己經(jīng)關(guān)閉。

file.mode:該屬性返回被打開文件的訪問模式。

file.name:該屬性返回文件的名稱。

如下程序簡單示范了如何打開文件和訪問被打開文件的屬性:

# 以默認方式打開文件
f = open('open_test.py')
# 訪問文件的編碼方式
print(f.encoding) # cp936
# 訪問文件的訪問模式
print(f.mode) # r
# 訪問文件是否已經(jīng)關(guān)閉
print(f.closed) # False
# 訪問文件對象打開的文件名
print(f.name) # open_test.py

上面程序使用 open() 內(nèi)置函數(shù)打開了 open_test.py 文件,接下來程序訪問了被打開文件的各屬性。運行上面程序,可以看到如下輸出結(jié)果:

cp936
r
False
open_test.py

從上面的輸出結(jié)果可以看出,open() 函數(shù)默認打開文件的模式是“r”,也就是只讀模式。下面詳細講解 open() 函數(shù)支持的不同模式。

文件打開模式

open() 函數(shù)支持的文件打開模式如下圖所示

模式意義
r只讀模式
w寫模式
a追加模式
+讀寫模式,可與其他模式結(jié)合使用。比如 r+ 代表讀寫模式,w+ 也代表讀寫模式
b二進制模式,可與其他模式結(jié)合使用。比如 rb 代表二進制只讀模式,rb+ 代表二進制讀寫模式,ab 代表二進制追加模式

可能有讀者感到疑惑,w 本身就代表寫模式,w+ 還有什么意義呢?

簡單來說,w 只是代表寫模式,而 w+ 則代表讀寫模式,但實際上它們的差別并不大。因為不管是 w 還是 w+ 模式,當使用這兩種模式打開指定文件時,open() 函數(shù)都會立即清空文件內(nèi)容,實際上都無法讀取文件內(nèi)容。

根據(jù)上面的介紹不難看出,如果希望調(diào)用 open() 函數(shù)打開指定文件后,該文件中的內(nèi)容能被保留下來,那么程序就不能使用 w 或 w+ 模式。

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI