python bytes和str之間的轉換
阿新 • • 發佈:2019-01-12
eth encode alter color 數據 amp 不能 encoding 參數
Python 3最重要的新特性大概要算是對文本和二進制數據作了更為清晰的區分。文本總是Unicode,由str類型表示,二進制數據則由bytes類型表示。Python 3不會以任意隱式的方式混用str和bytes,正是這使得兩者的區分特別清晰。你不能拼接字符串和字節包,也無法在字節包裏搜索字符串(反之亦然),也不能將字符串傳入參數為字節包的函數(反之亦然).
bytes字節
str字符串
# bytes object b = b"example" # str object s = "example" # str to bytes bytes(s, encoding = "utf8") # bytes to str str(b, encoding = "utf-8") # an alternative method # str to bytes str.encode(s) # bytes to str bytes.decode(b)
bytes解碼成str,str編碼成bytes
b1=b‘sdf‘ s1=‘sag‘ print(type(b1),type(s1))#<class ‘bytes‘> <class ‘str‘>
b2=b1.decode(‘utf8‘)#bytes按utf8的方式解碼成str
print(type(b2))#<class ‘str‘>
s2=s1.encode(‘utf8‘)#str按utf8的方式編碼成bytes print(type(s2))#<class ‘bytes‘>
python bytes和str之間的轉換