open()函數(shù)打開文件并返回相應(yīng)的文件對象。
open()的語法為:
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
file -類似路徑的對象(表示文件系統(tǒng)路徑)
mode(可選)-打開文件時的模式。如果未提供,則默認(rèn)為'r'(打開以文本模式閱讀)。可用的文件模式為:
模式 | 描述 |
---|---|
'r' | 打開文件進行讀取。(默認(rèn)) |
'w' | 打開文件進行寫入。如果不存在則創(chuàng)建一個新文件,或者如果存在則將其截斷。 |
'x' | 打開文件以進行獨占創(chuàng)建。如果文件已經(jīng)存在,則操作失敗。 |
'a' | 打開以在文件末尾追加而不截斷。如果不存在,則創(chuàng)建一個新文件。 |
't' | 以文本模式打開。(默認(rèn)) |
'b' | 以二進制模式打開。 |
'+' | 打開文件進行更新(讀取和寫入) |
buffering (可選)-用于設(shè)置緩沖策略
encoding (可選)-編碼格式
errors (可選)-字符串,指定如何處理編碼/解碼錯誤
newline(可選) -如何換行模式下工作(可用值:None,' ','\n','r',和'\r\n')
closefd(可選)-必須為True(默認(rèn));如果另有指定,將引發(fā)例外情況
opener(可選)-自定義開啟器;必須返回一個打開的文件描述符
open()函數(shù)返回一個文件對象,該對象可用于讀取,寫入和修改文件。
如果找不到該文件,它將引發(fā)FileNotFoundError異常。
# 打開當(dāng)前目錄的test.text文件 f = open("test.txt") # 指定完整路徑 f = open("C:/Python33/README.txt")
由于省略了模式,因此文件將以'r'模式打開。打開閱讀。
# 以讀取模式打開文件 f = open("path_to_file", mode='r') # 以寫入模式打開文件 f = open("path_to_file", mode = 'w') # 以追加模式打開文件 f = open("path_to_file", mode = 'a')
Python的默認(rèn)編碼為ASCII。您可以通過傳遞encoding參數(shù)輕松更改它。
f = open("path_to_file", mode = 'r', encoding='utf-8')
推薦讀物: Python文件輸入/輸出