您的当前位置:首页正文

如何在python中使用bytearray函数?

2024-07-16 来源:二三四教育网

我们学习了很多关于序列的函数,大都是不可变的,其实有一个可变的序列,在字节的调整上也非常灵活,这就是我们今天要讲的bytearray函数。在类型上,bytearray属于字节数据,和我们之前学的bytes相似。下面我们就一起看看bytearray函数的说明,参数、返回值和实例吧。

1.说明

(1) 返回值为一个新的字节数组

(2) 当3个参数都不传的时候,返回长度为0的字节数组

>>> b = bytearray()
>>> b
bytearray(b'')
>>> len(b)
0

(3)当source参数为字符串时,encoding参数也必须提供,函数将字符串使用str.encode方法转换成字节数组

>>> bytearray('中文')
Traceback (most recent call last):
  File "<pyshell#48>", line 1, in <module>
    bytearray('中文')
TypeError: string argument without an encoding
>>> bytearray('中文','utf-8')
bytearray(b'\xe4\xb8\xad\xe6\x96\x87')

2.参数

  • 如果 source 为整数,则返回一个长度为 source 的初始化数组;

  • 如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;

  • 如果 source 为可迭代类型,则元素必须为[0 ,255] 中的整数;

  • 如果 source 为与 buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。

  • 如果没有输入任何参数,默认就是初始化数组为0个元素。

3.返回值

返回新字节数组。

4.实例

>>> S = b"abcd"
>>> BA = bytearray(S)
 
>>> [ i for i in BA ]
[97, 98, 99, 100]
 
>>> BA[0] = 65
>>> BA
bytearray(b'Abcd')

bytearray是可变的二进制数据(byte)。

要构造bytearray对象,方法之一是将bytes数据作为bytearray()方法的参数,或者将str数据和编码作为参数。

以上就是我们在python中使用bytearray函数的方法,今天为大家带来的是其中的一种,更多方法需要小伙伴们自行探索~

显示全文