python的内置函数bytearray返回一个新的 bytes 数组,bytearray 类是一个可变序列,包含范围为 0 <= x < 256 的整数。
语法结构:
class bytearray([source[, encoding[, errors]]])
参数解析:
- 可选形参source可以传入字符串,int,iterable 可迭代对象, 遵循 缓冲区接口 的对象, 不同的类型将有不同的效果
- string ,如果source是字符串,则必须指定encoding参数,bytearray() 会使用 str.encode() 方法来将 string 转变成 bytes
- int ,如果source是int,会初始化大小为该数字的数组,并使用 null 字节填充
- 如果是一个遵循 缓冲区接口 的对象,该对象的只读缓冲区将被用来初始化字节数组
- iterable 可迭代对象, 要求元素的范围必须是 0 <= x < 256 的整数,它会被用作数组的初始内容
- 如果没有传入source参数,则返回一个长度为0的bytes数组
示例代码:
print(bytearray())
print(bytearray("I love you", encoding='utf-8'))
print(bytearray(3))
print(bytearray([1, 2, 3]))
运行结果: