Python bytearray的完整指南

695 阅读2分钟

bytearray() 方法返回bytearray对象,即一个给定字节的数组。它给出一个范围为0 <= x < 256的可变整数序列。

Python bytearray

Python bytearray() 是一个内置方法,它返回bytearray对象,即给定字节的数组。 **bytearray()**函数返回一个bytearray对象。

它可以将对象转换为字节数组对象或创建一个指定大小的空字节数组对象。

根据源类型的不同,bytearray()函数遵循一些规则:

  1. 如果没有传递参数,将返回一个空的字节数组。
  2. 如果源是整数,它用空值初始化给定长度的字节数组。
  3. 如果源是字符串,编码是强制性的,用于将字符串转换为字节数组。
  4. 如果源是可迭代的,如一个列表,它必须是可迭代的0 <= x < 256该范围内的整数,这些整数被用作数组的初始内容。

语法

bytearray(source, encoding, error)
  1. source (可选)- 它是初始化字节数组的源。
  2. encoding (可选)- 如果源是一个字符串,则是字符串的编码。
  3. errors (可选)- 如果源是一个字符串,当编码转换失败时要采取的行动(阅读更多:字符串编码)。

bytearray()方法返回指定大小和初始化值的字节数组:

# app.py

st3 = "Millie is Good Actor"

arr = bytearray(st3, 'utf-8')
print(arr)

请看下面的输出:

➜  pyt python3 app.py
bytearray(b'Millie is Good Actor')
➜  pyt

给定整数大小的字节数组

好了,现在看下面的python代码例子:

data = 10

array = bytearray(data)
print(array)

请看下面的输出:

➜  pyt python3 app.py
bytearray(b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
➜  pyt

来自可迭代列表的字节数组

好的,现在我们将看到Python列表,并看到输出:

# app.py

dataList = [11, 21, 19]

array = bytearray(dataList)
print(array)

请看下面的输出:

➜  pyt python3 app.py
bytearray(b'\x0b\x15\x13')
➜  pyt

Python bytearray length

要计算字节数组中的元素数量,使用len()函数:

dataList = [11, 21, 19]

array = bytearray(dataList)
print(len(array))

请看下面的输出:

➜  pyt python3 app.py
3
➜  pyt

使用整数的bytearray()

见下面的程序:

data = bytearray(1)
print(data)

见输出:

➜  pyt python3 app.py
bytearray(b'\x00')
➜  pyt

将字节数转换成字符串

见下面的程序:

data = b'El ni\xc3\xb1o come camar\xc3\xb3n'
print(data)

见下面的输出:

➜  pyt python3 app.py
b'El ni\xc3\xb1o come camar\xc3\xb3n'
➜  pyt

本教程就到此为止。