python中的open函數可以通過在打開文件時添加encoding參數來指定使用的編碼方式,encoding表示的是返回的數據采用何種編碼。
open()的函數原型:
open(file,mode=‘r',buffering=-1,encoding=None,errors=None,newline=None,closefd=True)
從官方文檔中我們可以看到open函數有很多的參數,我們常用的是file,mode和encoding,對于其它的幾個參數,平時不常用,也簡單介紹一下。
buffering的可取值有0,1,>1三個,0代表buffer關閉(只適用于二進制模式),1代表linebuffer(只適用于文本模式),>1表示初始化的buffer大小;
encoding表示的是返回的數據采用何種編碼,一般采用utf8或者gbk;
errors的取值一般有strict,ignore,當取strict的時候,字符編碼出現問題的時候,會報錯,當取ignore的時候,編碼出現問題,程序會忽略而過,繼續執行下面的程序。
newline可以取的值有None,\n,\r,'',‘\r\n',用于區分換行符,但是這個參數只對文本模式有效;
closefd的取值,是與傳入的文件參數有關,默認情況下為True,傳入的file參數為文件的文件名,取值為False的時候,file只能是文件描述符,什么是文件描述符,就是一個非負整數,在Unix內核的系統中,打開一個文件,便會返回一個文件描述符。
以上內容為大家介紹了python中的open函數如何編碼?希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。