Python| bytearray()函数
bytearray()
方法返回一个 bytearray 对象,它是一个给定字节的数组。它给出了 0 <= x < 256 范围内的可变整数序列。
句法:
bytearray(source, encoding, errors)
参数:
source[optional]: Initializes the array of bytes
encoding[optional]: Encoding of the string
errors[optional]: Takes action when encoding fails
返回:返回给定大小的字节数组。
source参数可用于以几种不同的方式初始化数组。让我们借助示例一一讨论。
代码#1:如果是字符串,必须提供编码和错误参数, bytearray()
使用str.encode()
) 将字符串转换为字节
str = "Geeksforgeeks"
# encoding the string with unicode 8 and 16
array1 = bytearray(str, 'utf-8')
array2 = bytearray(str, 'utf-16')
print(array1)
print(array2)
输出:
bytearray(b'Geeksforgeeks')
bytearray(b'\xff\xfeG\x00e\x00e\x00k\x00s\x00f\x00o\x00r\x00g\x00e\x00e\x00k\x00s\x00')
代码 #2:如果是整数,则创建该大小的数组并用空字节初始化。
# size of array
size = 3
# will create an array of given size
# and initialize with null bytes
array1 = bytearray(size)
print(array1)
输出:
bytearray(b'\x00\x00\x00')
代码#3:如果是对象,只读缓冲区将用于初始化字节数组。
# Creates bytearray from byte literal
arr1 = bytearray(b"abcd")
# iterating the value
for value in arr1:
print(value)
# Create a bytearray object
arr2 = bytearray(b"aaaacccc")
# count bytes from the buffer
print("Count of c is:", arr2.count(b"c"))
输出:
97
98
99
100
Count of c is: 4
代码 #4:如果是 Iterable(range 0<= x < 256),则用作数组的初始内容。
# simple list of integers
list = [1, 2, 3, 4]
# iterable as source
array = bytearray(list)
print(array)
print("Count of bytes:", len(array))
输出:
bytearray(b'\x01\x02\x03\x04')
Count of bytes: 4
代码#5:如果没有源,则创建一个大小为 0 的数组。
# array of size o will be created
# iterable as source
array = bytearray()
print(array)
输出:
bytearray(b'')