python3對文本和二進制數據作了更清晰的區分,文本老是unicode的,由str類型表示,二進制數據則由bytes類型表示,python3不會以任意混用的方式調用str和bytes。正是這二者區分的比較清晰,因此不能拼接字符串和字節包
在python3裏這兩種類型之間經過encode和decod函數來轉換
從str——>bytes 用encodepython
"hello world".encode("utf-8")
從bytes ——>str用decode編程
"hello world".decode("utf-8")
在何時會用到這個字節碼呢?
在python3裏socket編程,socket傳輸會使用字節碼傳輸,這時候就須要將文本的字符串轉換爲字節碼傳輸socket
字符編碼轉換
ide