Python 通過內置類型bytearray存儲二進制數據,相當於C語言中的char類型。
(1)應用場景:
二進制類型在一些基於內存數據塊操作,比如串口通信,網絡通信等。
(2)特性:
bytearray每一個元素存儲一個字節(0x00~0xff 或者 0 ~ 256)。
不同於字符串str,bytearray中的元素可以修改。
bytearray中每一個元素的值為ASCII碼對應的值。
(3)基礎操作:
# 創建一個二進制串,並賦值 b = bytearray([0x44, 0x4C, 0x4a, 0x26]) print b # 輸出對應ASCII字符串--> DLJ& # 添加一個元素 b.append(0x3A) print b # 輸出對應ASCII字符串--> DLJ&: # 創建一個8字節空間,賦空值 b = bytearray(8) print len(b) # 輸出 --> 8 # 給b設置值 b[0] = 0x44 b[1] = 0x4d print b # DM # 以字符串創建一個二進制 b = bytearray('abc') # 修改字符串值 b[1] = ord('R') print b # 輸出 --> aRc # 通過16進制字符串構建二進制 b = bytearray.fromhex('444c') print b # 輸出 --> DL # 二進制字符串轉換為int,一個int為4字節,需要通過struct模塊轉換 import struct b = bytearray([0x01, 0x02, 0x03, 0x04]) print struct.unpack('i', b) # 輸出(67305985,)