新聞中心
在python3以后,字符串和bytes類型徹底分開了。字符串是以字符為單位進(jìn)行處理的,bytes類型是以字節(jié)為單位處理的。

bytes數(shù)據(jù)類型在所有的操作和使用甚至內(nèi)置方法上和字符串?dāng)?shù)據(jù)類型基本一樣,也是不可變的序列對象。
相關(guān)推薦:《Python教程》
bytes對象只負(fù)責(zé)以二進(jìn)制字節(jié)序列的形式記錄所需記錄的對象,至于該對象到底表示什么(比如到底是什么字符)則由相應(yīng)的編碼格式解碼所決定。Python3中,bytes通常用于網(wǎng)絡(luò)數(shù)據(jù)傳輸、二進(jìn)制圖片和文件的保存等等??梢酝ㄟ^調(diào)用bytes()生成bytes實(shí)例,其值形式為 b'xxxxx',其中 'xxxxx' 為一至多個(gè)轉(zhuǎn)義的十六進(jìn)制字符串(單個(gè) x 的形式為:\x12,其中\(zhòng)x為小寫的十六進(jìn)制轉(zhuǎn)義字符,12為二位十六進(jìn)制數(shù))組成的序列,每個(gè)十六進(jìn)制數(shù)代表一個(gè)字節(jié)(八位二進(jìn)制數(shù),取值范圍0-255),對于同一個(gè)字符串如果采用不同的編碼方式生成bytes對象,就會(huì)形成不同的值。
b = b'' # 創(chuàng)建一個(gè)空的bytes
b = byte() # 創(chuàng)建一個(gè)空的bytes
b = b'hello' # 直接指定這個(gè)hello是bytes類型
b = bytes('string',encoding='編碼類型') #利用內(nèi)置bytes方法,將字符串轉(zhuǎn)換為指定編碼的bytes
b = str.encode('編碼類型') # 利用字符串的encode方法編碼成bytes,默認(rèn)為utf-8類型
bytes.decode('編碼類型'):將bytes對象解碼成字符串,默認(rèn)使用utf-8進(jìn)行解碼。對于bytes,我們只要知道在Python3中某些場合下強(qiáng)制使用,以及它和字符串類型之間的互相轉(zhuǎn)換,其它的基本照抄字符串。
簡單的省事模式:
string = b'xxxxxx'.decode() 直接以默認(rèn)的utf-8編碼解碼bytes成string
b = string.encode() 直接以默認(rèn)的utf-8編碼string為bytes
新聞標(biāo)題:創(chuàng)新互聯(lián)Python教程:pythonbytes是什么
文章網(wǎng)址:http://m.5511xx.com/article/codggii.html


咨詢
建站咨詢
