python open() 方法用於開啟乙個檔案,並返回檔案物件,在對檔案進行處理過程都需要使用到這個函式,如果該檔案無法被開啟,會丟擲 oserror。
注意:使用 open() 方法一定要保證關閉檔案物件,即呼叫 close() 方法。
open() 函式常用形式是接收兩個引數:檔名(file)和模式(mode)。
open
(file
, mode=
'r')
完整的語法格式為:
open
(file
, mode=
'r', buffering=-1
, encoding=
none
, errors=
none
, newline=
none
, closefd=
true
, opener=
none
)
以上**的引數說明:
引數說明
file
必需,檔案路徑(相對或者絕對路徑)
mode
可選,檔案開啟模式
buffering
設定緩衝
encoding
一般使用utf8
errors
報錯級別
newline
區分換行符
closefd
傳入的file引數型別
opener
設定自定義開啟器,開啟器的返回值必須是乙個開啟的檔案描述符
引數說明
模式描述
t文字模式 (預設)。
x寫模式,新建乙個檔案,如果該檔案已存在則會報錯。
b二進位制模式。
+開啟乙個檔案進行更新(可讀可寫)。
u通用換行模式(不推薦)。
r以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。
rbr+
開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。
rb+w
開啟乙個檔案只用於寫入。如果該檔案已存在則開啟檔案,並從開頭開始編輯,即原有內容會被刪除。如果該檔案不存在,建立新檔案。
wbw+
開啟乙個檔案用於讀寫。如果該檔案已存在則開啟檔案,並從開頭開始編輯,即原有內容會被刪除。如果該檔案不存在,建立新檔案。
wb+a
開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。
ab以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。
a+開啟乙個檔案用於讀寫。如果該檔案已存在,檔案指標將會放在檔案的結尾。檔案開啟時會是追加模式。如果該檔案不存在,建立新檔案用於讀寫。
ab+以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。如果該檔案不存在,建立新檔案用於讀寫。
預設為文字模式,如果要以二進位制模式開啟,加上 b 。
file 物件使用 open 函式來建立,下表列出了 file 物件常用的函式:
序號方法描述1
file.close()
關閉檔案。關閉後檔案不能再進行讀寫操作。
2file.flush()
重新整理檔案內部緩衝,直接把內部緩衝區的資料立刻寫入檔案, 而不是被動的等待輸出緩衝區寫入。
3file.fileno()
返回乙個整型的檔案描述符(file descriptor fd 整型), 可以用在如os模組的read方法等一些底層操作上。
4file.isatty()
如果檔案連線到乙個終端裝置返回 true,否則返回 false。
5file.next()
返回檔案下一行。
6file.read([size])
從檔案讀取指定的位元組數,如果未給定或為負則讀取所有。
7file.readline([size])
讀取整行,包括 「\n」 字元。
8file.readlines([sizeint])
讀取所有行並返回列表,若給定sizeint>0,則是設定一次讀多少位元組,這是為了減輕讀取壓力。
9file.seek(offset[, whence])
設定檔案當前位置
10file.tell()
返回檔案當前位置。
11file.truncate([size])
擷取檔案,擷取的位元組通過size指定,預設為當前檔案位置。
12file.write(str)
將字串寫入檔案,返回的是寫入的字元長度。
13file.writelines(sequence)
向檔案寫入乙個序列字串列表,如果需要換行則要自己加入每行的換行符。
runoob python file(檔案) 方法
python中步長的使用方法
我們在python中,有時候是需要間斷取數或者其他情況時,這時就需要用到步長了,如下 name a b c d e f g 這是乙個列表,那如果需要取出列表中的數,但是又是間斷取指定數時,此時可以用到步長,如圖 在python中,像print name 1 4 這叫 切片,記住切片取數時是取頭不取尾...
python中and和or的使用方法
今天看了乙個源 甚是對python不解,於是查了下資料,只是糾正下網上的老兄的解釋 python 中的and 從右到左 計算表示式。若全部值均為真,則返回最後乙個值。若存在假,返回第乙個假值。or是從左到右 計算表示式。返回第乙個為真的值。idle 1.2.4 a and b 等價於if b ret...
python 中的 del 使用方法
python中的del用法比較特殊,新手學習往往產生誤解,弄清del的用法,可以幫助深入理解python的記憶體方面的問題。python的del不同於c的free和c 的delete。由於python都是引用,而python有gc機制,所以,del語句作用在變數上,而不是資料物件上。if name ...