python3對文本和二進(jìn)制數(shù)據(jù)做了更清晰的區(qū)分,文本總是unicode的,由str類型表示,二進(jìn)制數(shù)據(jù)則由bytes類型表示,python3不會以任意混用的方式調(diào)用str和bytes。正是這兩者區(qū)分的比較清晰,所以不能拼接字符串和字節(jié)包
在python3里這兩種類型之間通過encode和decod函數(shù)來轉(zhuǎn)換
從str——>bytes 用encode
創(chuàng)新互聯(lián)公司專注于當(dāng)陽企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站,成都商城網(wǎng)站開發(fā)。當(dāng)陽網(wǎng)站建設(shè)公司,為當(dāng)陽等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站策劃,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
"hello world".encode("utf-8")
從bytes ——>str用decode
"hello world".decode("utf-8")
在什么時候會用到這個字節(jié)碼呢?
在python3里socket編程,socket傳輸會使用字節(jié)碼傳輸,這時候就需要將文本的字符串轉(zhuǎn)換為字節(jié)碼傳輸
字符編碼轉(zhuǎn)換