1. 程式人生 > >Python位元組串和位元組陣列

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