函數原型
open(file, mode=‘r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True)
buffering的可取值有0,1, >1三個,0代表buffer關閉(只適用於二進制模式),1代表line buffer(只適用於文本模式),>1表示初始化的buffer大小;
encoding表示的是返回的數據采用何種編碼,一般采用utf8或者gbk;
errors的取值一般有strict,ignore,當取strict的時候,字符編碼出現問題的時候,會報錯,當取ignore的時候,編碼出現問題,程序會忽略而過,繼續執行下面的程序。
newline可以取的值有None, \n, \r, '', ‘\r\n' ,用於區分換行符,但是這個參數只對文本模式有效;
closefd的取值,是與傳入的文件參數有關,默認情況下為True,傳入的file參數為文件的文件名,取值為False的時候,file只能是文件描述符,什么是文件描述符,就是一個非負整數,在Unix內核的系統中,打開一個文件,便會返回一個文件描述符。
model
1、r或rt 默認模式,文本模式讀
2、rb 二進制文件
3、w或wt 文本模式寫,打開前文件存儲被清空
4、wb 二進制寫,文件存儲同樣被清空
5、a 追加模式,只能寫在文件末尾
6、a+ 可讀寫模式,寫只能寫在文件末尾
7、w+ 可讀寫,與a+的區別是要清空文件內容
8、r+ 可讀寫,與a+的區別是可以寫到文件任何位置
open結束后記得添加close()!