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