1.讀寫檔案:open() 方法用於開啟乙個檔案,並返回檔案物件
注意:(1)使用 open() 方法一定要保證關閉檔案物件,即呼叫 close() 方法。
(2)open() 函式常用形式是接收兩個引數:檔名(file)和模式(mode)。
open
(file
, mode=
'r')
fo =
open
("r.txt"
,"wb"
)print
("檔名為: "
, fo.name)
# r.txt
相對完整的語法格式為:
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引數型別
mode引數:模式
描述t文字模式 (預設)
x寫模式,新建乙個檔案,如果該檔案已存在則會報錯。
b二進位制模式。
+開啟乙個檔案進行更新(可讀可寫)。
u通用換行模式(python 3 不支援)。
r以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。
rbr+
開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。
rb+w
開啟乙個檔案只用於寫入。如果該檔案已存在則開啟檔案,並從開頭開始編輯,即原有內容會被刪除。如果該檔案不存在,建立新檔案。
wbw+
開啟乙個檔案用於讀寫。如果該檔案已存在則開啟檔案,並從開頭開始編輯,即原有內容會被刪除。如果該檔案不存在,建立新檔案。
wb+a
開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。
ab以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。
a+開啟乙個檔案用於讀寫。如果該檔案已存在,檔案指標將會放在檔案的結尾。檔案開啟時會是追加模式。如果該檔案不存在,建立新檔案用於讀寫。
b+以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。如果該檔案不存在,建立新檔案用於讀寫。
2.檔案物件:
常用函式:
(1 )file.close():關閉檔案,關閉後檔案不能再進行讀寫操作。
fileobject.close(
);
(2)file.flush():重新整理檔案內部緩衝,直接把內部緩衝區的資料立刻寫入檔案, 而不是被動的等待輸出緩衝區寫入。
(3)file.fileno():返回乙個整型的檔案描述符(file descriptor fd 整型), 可以用在如os模組的read方法等一些底層操作上。
(4)file.isatty():如果檔案連線到乙個終端裝置返回 true,否則返回 false。
(5)file.next():python 3 中的 file 物件不支援 next() 方法。返回檔案下一行。
(6)file.read([size]):從檔案讀取指定的位元組數,如果未給定或為負則讀取所有。
(7)file.readline([size]):讀取整行,包括 「\n」 字元。
(8)file.readlines([sizeint]):讀取所有行並返回列表,若給定sizeint>0,返回總和大約為sizeint位元組的行, 實際讀取值可能比 sizeint 較大, 因為需要填充緩衝區。
(9)file.seek(offset[, whence]):移動檔案讀取指標到指定位置
(10)file.tell():返回檔案當前位置。
(11)file.truncate([size]):從檔案的首行首字元開始截斷,截斷檔案為 size 個字元,無 size 表示從當前位置截斷;截斷之後後面的所有字元被刪除,其中 widnows 系統下的換行代表2個字元大小。
(12)file.write(str):將字串寫入檔案,返回的是寫入的字元長度。
(13)file.writelines(sequence):向檔案寫入乙個序列字串列表,如果需要換行則要自己加入每行的換行符。
Day 9 檔案與檔案系統
在寫入其他型別的物件之前,需要先把它們轉化為字串 在文字模式下 或者位元組物件 在二進位制模式下 f.read size 檔案末尾 f.read 將返回乙個空字串 f.readline 從文中讀取 for line in f print line,end this is the first line...
Day 9 檔案與檔案系統
練習1 開啟中文字元的文件時,會出現亂碼,python自帶的開啟檔案是否可以指定文字編碼?還是只能用相關函式?open file mode r buffering none encoding none errors none newline none closefd true 在mode中設定檔案開...
Python 9 檔案與檔案系統
檔案與檔案系統 開啟檔案 open file,mode r buffering none,encoding none,errors none,newline none,closefd true 開啟模式 執行操作 r 以唯讀方式開啟檔案,檔案的指標將會放在檔案的開頭 w 開啟乙個檔案只用於寫入。如果...