python bytearray

1、概念:

bytes为字节序列;而bytearray为可变的字节序列,或称为字节数组;它们都是二进制数据组成的序列,取值范围为0~255。

2、bytearray的定义:

定义一个空bytearray,bytearray():

>>> ba = bytearray()
>>> ba
bytearray(b'')
>>> type(ba)
<class 'bytearray'>
>>> 

定义指定长度的字节数组bytearray,默认以0填充,bytearray(int),不能是浮点型:

>>> ba10 = bytearray(10)
>>> ba10
bytearray(b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
>>> sa10 = ba10.decode()
>>> sa10
'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
>>> 

定义指定内容的bytearray,bytearray(整型可迭代对象),int整型组成的可迭代对象里的元素,依次取出,放在字节数组的字节中,序列元素不能有非整型,也不能大于255:

>>> b14 = bytearray((1,2,3,4,))
>>> b14
bytearray(b'\x01\x02\x03\x04')
>>> b14 = bytearray([1.1,2.2,3,4])
Traceback (most recent call last):
  File "<pyshell#9>", line 1, in <module>
    b14 = bytearray([1.1,2.2,3,4])
TypeError: 'float' object cannot be interpreted as an integer
>>> b14 = bytearray([1,'a',2,3])
Traceback (most recent call last):
  File "<pyshell#10>", line 1, in <module>
    b14 = bytearray([1,'a',2,3])
TypeError: 'str' object cannot be interpreted as an integer
>>> 
>>> b14 = bytearray([1,257])
Traceback (most recent call last):
  File "<pyshell#11>", line 1, in <module>
    b14 = bytearray([1,257])
ValueError: byte must be in range(0, 256)
>>> 

bytearray(bytes_or_buffer) -> mutable copy of bytes_or_buffer

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值