encode和decode的區別


在運行的時候,有時候會報編碼錯誤,本文就來研究一下這個問題。

為什么會出現亂碼呢?因為在文件存的時候格式和讀取時候格式不一致就會亂碼了。

字符串在python內部的表示是unicode編碼,也可以說現在的內存是unicode編碼格式,硬盤是utf-8。平常的數據操作都是先把數據讀取到內存中,所以內存中都是unicode編碼格式。所以我們平常在做編碼轉換時候,通常用unicode作為中間編碼。先將其他編碼的字符串解碼(decode)成unicode,再從unicode編碼(encode)成另一種編碼格式。

 

decode的作用是將二進制數據解碼成unicode編碼,如str1.decode('utf-8'),表示將utf-8的編碼字符串解碼成unicode編碼。

 簡單的來說:decode就是把二進制數據(bytes)轉化成人看的懂得英文或者漢字(decode用的比較多)

encode的作用是將unicode編碼的字符串編碼成二進制數據,如str2.encode('utf-8'),表示將unicode編碼的字符串編碼成utf-8。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM