Python bytearray() 函数

Python3 内置函数 Python3 内置函数


bytearray() 是 Python 中用于创建可变字节序列的内置函数。

bytearray 与 bytes 非常相似,但有一个关键区别:bytearray 是可变的,可以随时修改其中的字节。这使得它在需要频繁修改二进制数据的场景中非常有用。

单词释义bytearray 意为"字节数组",是可变的字节序列。


基本语法与参数

语法格式

bytearray(source)
bytearray(source, encoding)
bytearray(source, encoding, errors)

参数说明

  • 参数 source
    • 类型: 整数、可迭代对象、字符串
    • 描述: 用于初始化字节数组的源数据。

函数说明

  • 返回值: 返回一个可变的 bytearray 对象。
  • 特点: 可以修改其中的字节元素。

实例

示例 1:创建 bytearray

实例

# 创建指定长度的 bytearray
b = bytearray(5)
print(b)           # 输出: bytearray(b'\x00\x00\x00\x00\x00')

# 从可迭代对象创建
b = bytearray([72, 101, 108, 108, 111])
print(b)           # 输出: bytearray(b'Hello')

# 从字符串创建
b = bytearray("你好", encoding='utf-8')
print(b)          # 输出: bytearray(b'\xe4\xbd\xa0\xe5\xa5\xbd')

# 空 bytearray
b = bytearray()
print(b)          # 输出: bytearray(b'')

运行结果预期:

bytearray(b'\x00\x00\x00\x00\x00')
bytearray(b'Hello')
bytearray(b'\xe4\xbd\xa0\xe5\xa5\xbd')
bytearray(b'')

代码解析:

  1. 创建方式与 bytes 类似。
  2. bytearray 可以通过多种方式初始化。

示例 2:修改 bytearray

实例

# bytearray 是可变的
b = bytearray("Hello", encoding='utf-8')
print(b)          # 输出: bytearray(b'Hello')

# 修改单个字节
b[0] = 74  # 'J' 的 ASCII 码
print(b)          # 输出: bytearray(b'Jello')

# 追加字节
b.append(33)  # '!' 的 ASCII 码
print(b)          # 输出: bytearray(b'Jello!')

# 扩展
b.extend([33, 33])
print(b)          # 输出: bytearray(b'Jello!!!')

# 删除
del b[0]
print(b)          # 输出: bytearray(b'ello!!!')

运行结果预期:

bytearray(b'Hello')
bytearray(b'Jello')
bytearray(b'Jello!')
bytearray(b'Jello!!!')
bytearray(b'ello!!!')

bytearray 支持丰富的修改操作:索引赋值、append、extend、del 等。


Python3 内置函数 Python3 内置函数