Python位元組串和位元組陣列
位元組串和位元組陣列
位元組串bytes (也叫位元組序列)
作用:
儲存以位元組為單位的資料
位元組串是不可變的位元組序列
位元組:
位元組是由8個位(bit)組成的資料單位,是計算機進行資料管理的單位
位元組是用 0 ~ 255 範圍內的整數表示的
位元組串的建構函式 bytes
bytes() 生成一個空的位元組串 等同於 b''
bytes(整數可迭代物件) # 用可迭代物件初始化一個位元組串
bytes(整數n) 生成n個值為0的位元組串
bytes(字串, encoding='utf-8') 用字串轉為編碼生成一個位元組串
bytes 的運算:
+ += * *=
< <= > >= == !=
in / not in
索引和切片len(x)
max(x)
min(x)
sum(x)
any(x)
all(x)
bytes 和 str 的區別:
bytes 儲存位元組( 通常值在 range(0, 256))
str 儲存unicode字元( 通常值在0~65535)
bytes 與 str 的轉換
編碼(encode)
str ------------> bytes
b = s.encode(encoding='utf-8')解碼(decode)
bytes ----------> str
s = b.decode(encoding='utf-8')
位元組陣列 bytearray
可變的位元組序列
位元組陣列的建構函式: bytearray
bytearray() 建立空的位元組陣列
bytearray(整數) 用可迭代物件初始化一個位元組陣列
bytearray(整型可迭代物件) 生成n個值為0的位元組陣列
bytearray(字串, encoding='utf-8') 用字串的轉換編碼生成一個位元組陣列
bytearray 的運算:
+ += * *=
< <= > >= == !=
in / not in
索引和切片
(位元組陣列支援索引和切片的賦值操作,規則同列表的索引和切片賦值規則)
bytearray的方法:
BA.clear() 清空
BA.append(n) 追加一個位元組(n為0~255的整數)
BA.remove(value) 刪除第一個出現的位元組,如果沒有出現,則觸發ValueError錯誤
BA.reverse() 位元組順序反轉
BA.decode(encoding='utf-8') # 解碼為字串
BA.find(sub[, start[,end]]) # 查詢 sub