📅  最后修改于: 2023-12-03 15:33:58.471000             🧑  作者: Mango
bytearray()
函数在Python中用于创建一个可变的字节数组对象。它与bytes()
和str()
函数类似,区别在于字节数组对象是可变的(mutable)。
bytearray([source[, encoding[, errors]]])
source
(可选) :字符串、数组或缓冲区,用于初始化数组的值。encoding
(可选) :如果给出了字符串参数,则必须指定编码类型。默认为utf-8。errors
(可选) :如果源参数是一个字符串,则指定错误处理方案。以下示例演示如何使用bytearray()
函数创建一个字节数组对象:
arr = bytearray(b'hello')
print(arr)
输出结果为:
bytearray(b'hello')
由于字节数组对象是可变的,可以通过索引修改其中的值。例如,以下示例将字节数组对象中的第二个元素修改为字母a
:
arr = bytearray(b'hello')
arr[1] = ord('a')
print(arr)
输出结果为:
bytearray(b'hallo')
以下示例演示如何将一个字符串转换为字节数组对象:
arr = bytearray('hello', 'utf-8')
print(arr)
输出结果为:
bytearray(b'hello')
以下示例演示如何使用内存视图(memeoryview)对象将缓冲区转换为字节数组对象:
from array import array
buf = array('B', [0, 1, 2, 3, 4])
mv = memoryview(buf)
arr = bytearray(mv)
print(arr)
输出结果为:
bytearray(b'\x00\x01\x02\x03\x04')
bytearray()
函数用于创建可变的字节数组对象,并且可以方便地从字符串、数组、缓冲区中创建。由于字节数组对象是可变的,可以方便地修改其中的值。