python字節(bytes)


 


在 3.x 中,字符串和二進制數據完全區分開。文本總是 Unicode,由 str 類型表示,二進制數據則由 bytes 類型表示。Python 3 不會以任意隱式的方式混用 str 和 bytes,你不能拼接字符串和字節流,也無法在字節流里搜索字符串(反之亦然),也不能將字符串傳入參數為字節流的函數(反之亦然)。


bytes 類型與 str 類型,二者的方法僅有 encode() 和 decode() 不同。

bytes 類型數據需在常規的 str 類型前加個 b 以示區分,例如 b'abc'。

只有在需要將 str 編碼(encode)成 bytes 的時候,比如:通過網絡傳輸數據;或者需要將 bytes 解碼(decode)成 str 的時候,我們才會關注 str 和 bytes 的區別。


bytes 轉 str:

b'abc'.decode()
str(b'abc')
str(b'abc', encoding='utf-8')

str 轉 bytes:

'中國'.encode()
bytes('中國', encoding='utf-8')

 

 

 

str->bytes:encode編碼
bytes->str:decode解碼

 


免責聲明!

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



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