免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
bytes類型--python
Python的字符串類型是str,在內(nèi)存中以Unicode表示,一個字符對應若干個字節(jié)。如果要在網(wǎng)絡上傳輸,或者保存到磁盤上,就需要把str變?yōu)橐宰止?jié)為單位的bytes。
Python對bytes類型的數(shù)據(jù)用帶b前綴的單引號或雙引號表示:
x = b'ABC'
要注意區(qū)分'ABC'和b'ABC',前者是str,后者雖然內(nèi)容顯示得和前者一樣,但bytes的每個字符都只占用一個字節(jié)。
以Unicode表示的str通過encode()方法可以編碼為指定的bytes,例如:
--->bytes

>>> 'ABC'.encode('ascii')
b'ABC'
>>> '中文'.encode('utf-8')
b'\xe4\xb8\xad\xe6\x96\x87


--->str
如果我們從網(wǎng)絡或磁盤上讀取了字節(jié)流,那么讀到的數(shù)據(jù)就是bytes。要把bytes變?yōu)閟tr,就需要用decode()方法:

>>> b'ABC'.decode('ascii')
'ABC'
>>> b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')
'中文'
如果bytes中包含無法解碼的字節(jié),decode()方法會報錯

bytes中只有一小部分無效的字節(jié),可以傳入errors='ignore'忽略錯誤的字節(jié):
>>> b'\xe4\xb8\xad\xff'.decode('utf-8', errors='ignore')
'中'


當str和bytes互相轉換時,需要指定編碼。最常用的編碼是UTF-8。Python當然也支持其他編碼方式,比如把Unicode編碼成GB2312:
>>> '中文'.encode('gb2312')
b'\xd6\xd0\xce\xc4'
但這種方式純屬自找麻煩,如果沒有特殊業(yè)務要求,請牢記僅使用UTF-8編碼。
本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
專業(yè)在線電子書網(wǎng)站
Python必學基礎概念
python3大作戰(zhàn)之encode與decode講解
Python encode和decode
Python 3 字符串中的 STR和Bytes 究竟有什么區(qū)別?
《源碼探秘 CPython》19. 字符集和字符編碼
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服