Python bytearray() 函数
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'')
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'')
代码解析:
- 创建方式与 bytes 类似。
- 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!!!')
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 内置函数
点我分享笔记