如何使用Python open函數(shù)打開指定文件?很多新手對此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比陸良網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式陸良網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋陸良地區(qū)。費(fèi)用合理售后完善,十載實(shí)體公司更值得信賴。
掌握了各種操作目錄字符串或目錄的函數(shù)之后,接下來可以準(zhǔn)備讀寫文件了。在進(jìn)行文件讀寫之前,首先要打開文件。
Python 提供了一個(gè)內(nèi)置的 open() 函數(shù),該函數(shù)用于打開指定文件。
open() 函數(shù)的語法格式如下:
open(file_name [, access_mode] [, buffering])
在上面的語法格式中,只有第一個(gè)參數(shù)是必需的,該參數(shù)代表要打開文件的路徑。access_mode 和 bufering 參數(shù)都是可選的。
在打開文件之后,就可調(diào)用文件對象的屬性和方法了。文件對象支持如下常見的屬性:
file.closed:該屬性返回文件是否己經(jīng)關(guān)閉。
file.mode:該屬性返回被打開文件的訪問模式。
file.name:該屬性返回文件的名稱。
如下程序簡單示范了如何打開文件和訪問被打開文件的屬性:
# 以默認(rèn)方式打開文件 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 文件,接下來程序訪問了被打開文件的各屬性。運(yùn)行上面程序,可以看到如下輸出結(jié)果:
cp936 r False open_test.py
從上面的輸出結(jié)果可以看出,open() 函數(shù)默認(rèn)打開文件的模式是“r”,也就是只讀模式。下面詳細(xì)講解 open() 函數(shù)支持的不同模式。
文件打開模式
open() 函數(shù)支持的文件打開模式如下圖所示
模式 | 意義 |
---|---|
r | 只讀模式 |
w | 寫模式 |
a | 追加模式 |
+ | 讀寫模式,可與其他模式結(jié)合使用。比如 r+ 代表讀寫模式,w+ 也代表讀寫模式 |
b | 二進(jìn)制模式,可與其他模式結(jié)合使用。比如 rb 代表二進(jìn)制只讀模式,rb+ 代表二進(jìn)制讀寫模式,ab 代表二進(jìn)制追加模式 |
可能有讀者感到疑惑,w 本身就代表寫模式,w+ 還有什么意義呢?
簡單來說,w 只是代表寫模式,而 w+ 則代表讀寫模式,但實(shí)際上它們的差別并不大。因?yàn)椴还苁?w 還是 w+ 模式,當(dāng)使用這兩種模式打開指定文件時(shí),open() 函數(shù)都會(huì)立即清空文件內(nèi)容,實(shí)際上都無法讀取文件內(nèi)容。
根據(jù)上面的介紹不難看出,如果希望調(diào)用 open() 函數(shù)打開指定文件后,該文件中的內(nèi)容能被保留下來,那么程序就不能使用 w 或 w+ 模式。
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。