Study「Python」:字節型與字符型之間的轉換

python 中某些模塊對數據進行處理時返回的結果可能是字節型對象,但是下一步使用的參數需要的是字符型對象,這裏簡單記錄一下字節型與字符型之間的轉換。

目錄

一、字節與字符

(一)字符對象

(二)字節對象

二、字符型轉字節型

二、字節型轉字符型


一、字節與字符

首先我們得明確字節是給計算機看的,而字符是給人看的

(一)字符對象

創建字節對象的方法很簡單,有兩種

>>> a = '123'
>>> a
'123'
>>> type(a)
<class 'str'>
>>> a = str(123)
>>> a
'123'
>>> type(a)
<class 'str'>

(二)字節對象

創建字節對象的方法有兩種

>>> b = b'123'
>>> b
b'123'
>>> type(b)
<class 'bytes'>
>>> b = bytes(123)
>>> b
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
>>> type(b)
<class 'bytes'>

二、字符型轉字節型

同樣也有兩種方法:

>>> b = bytes(a)
>>> b
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
>>> type(b)
<class 'bytes'>
>>> b = a.encode()
>>> b
b'123'
>>> type(b)
<class 'bytes'>

二、字節型轉字符型

兩種方法:

>>> a = b.decode()
>>> a
'123'
>>> type(a)
<class 'str'>
>>> a = str(b)
>>> a
"b'123'"
>>> type(a)
<class 'str'>

該方法輸出的結果可能與預想不同,讀者可以通過如下代碼調整:

>>> a = a.replace("b'", "").replace("'", "")
>>> a
'123'
>>> type(a)
<class 'str'>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章