Python基础数据类型---bytes
生活随笔
收集整理的這篇文章主要介紹了
Python基础数据类型---bytes
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
由于Python的字符串類型是str,在內(nèi)存中以Unicode表示,一個字符對應(yīng)若干個字節(jié)。如果要在網(wǎng)絡(luò)上傳輸,或者保存到磁盤上,就需要把str變?yōu)橐宰止?jié)為單位的bytes。
Python對bytes類型的數(shù)據(jù)用帶b前綴的單引號或雙引號表示:
b1 = b'alex' print(b1,type(b1)b'alex' <class 'bytes'>要注意區(qū)分’ABC’和b’ABC’,前者是str,后者雖然內(nèi)容顯示得和前者一樣,但bytes的每個字符都只占用一個字節(jié)。
字符串與bytes相互轉(zhuǎn)換:
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:579817333 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' s1 = 'alex' # str ---> bytes encode 編碼 b1 = s1.encode('utf-8') print(b1) # bytes---> str decode 解碼 s2 = b1.decode('utf-8') print(s2)b'alex' alex指定編碼轉(zhuǎn)換:
s1 = 'alex' b2 = s1.encode('gbk') s3 = b2.decode('gbk') print(b2) print(s3)b'alex' alex中文轉(zhuǎn)換時,不同的編碼不能直接轉(zhuǎn)換報錯如下
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:579817333 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' s4 = '中國' b4 = s4.encode('utf-8') s5 = b4.decode('gbk') print(s5)UnicodeDecodeError: 'gbk' codec can't decode byte 0xad in position 2: illegal multibyte sequence s4 = '中國' b4 = s4.encode('utf-8') # utf-8 bytes print(b4) b6 = b4.decode('utf-8') # utf-8 unicode print(b6) b7 = b6.encode('gbk') # gbk bytes print(b7)b'\xe4\xb8\xad\xe5\x9b\xbd' #不同編碼的bytes數(shù)據(jù),長度不一樣 中國 b'\xd6\xd0\xb9\xfa'總結(jié)
以上是生活随笔為你收集整理的Python基础数据类型---bytes的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python:初始函数
- 下一篇: Python:给定一个不超过5位的正整数