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,)