當前位置:成語大全網 - 新華字典 - 怎麽解決Python3亂碼問題

怎麽解決Python3亂碼問題

python 3和2很大區別就是python本身改為默認用unicode編碼。

字符串不再區分"abc"和u"abc", 字符串"abc"默認就是unicode,不再代表本地編碼、

由於有這種內部編碼,像c#和java類似,再沒有必要在語言環境內做類似設置編碼,比如“sys.setdefaultencoding”;

也因此也python 3的代碼和包管理上打破了和2.x的兼容。2.x的擴展包要適應這種情況改寫。

另壹個問題是語言環境內只有unicode怎麽輸出gbk之類的本地編碼。

答按慣例都在(序列化)輸出時才轉換成本地編碼。

比如

file.write("GBK的中文".encode("GBK"))

python環境內字符串用str.encode("GBK")方法輸出成字節串用於和其他環境交流。