python3 bytes與str資料型別相互轉換

2022-06-29 11:24:08 字數 730 閱讀 4831

bytes主要是給在計算機看的,string主要是給人看的

中間有個橋梁就是編碼規則,現在大趨勢是utf8

bytes物件是二進位制,很容易轉換成16進製制,例如\x64

string就是我們看到的內容,例如'abc'

string經過編碼encode,轉化成二進位制物件,給計算機識別

bytes經過反編碼decode,轉化成string,讓我們看,但是注意反編碼的編碼規則是有範圍,\xc8就不是utf8識別的範圍

# bytes object  

2 b = b"example"

3

4 # str object

5 s = "example"

6

7 # str to bytes

8 bytes(s, encoding = "utf8")

9

10 # bytes to str

11 str(b, encoding = "utf-8")

12

13 # an alternative method

14 # str to bytes

15 str.encode(s) # 字串轉bytes

16

17 # bytes to str # bytes轉字串

18 bytes.decode(b)

Python3中bytes和HexStr之間的轉換

在python運算元據內容時,多數情況下可能遇到下面3種型別的資料處理 hexstring 如 1c532145697a8b6f str 如 x1c x53 x21 x45 x69 x7a x8b x6f list 如 0x1c,0x53,0x21,0x45,0x69,0x7a,0x8b,0x6f ...

python3 中bytes和str型別

轉 python 3最重要的新特性之一是對字串和二進位制資料流做了明確的區分。文字總是unicode,由str型別表示,二進位制資料則由bytes型別表示。python 3不會以任意隱式的方式混用str和bytes,你不能拼接字串和位元組流,也無法在位元組流裡搜尋字串 反之亦然 也不能將字串傳入引數...

Python3中的bytes和str型別

python 3最重要的新特性之一是對字串和二進位制資料流做了明確的區分。文字總是unicode,由str型別表示,二進位制資料則由bytes型別表示。python 3不會以任意隱式的方式混用str和bytes,你不能拼接字串和位元組流,也無法在位元組流裡搜尋字串 反之亦然 也不能將字串傳入引數為位...