Python 二進位制(Bytearray)
阿新 • • 發佈:2020-08-28
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,)