说明
《Python 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
Python 内置函数 bytes() 可以生成字节序列(又叫字节串),字节序列是一个不可变序列包含范围为 0 <= x < 256 的整数,bytes 是 bytearray 的不可变版本——带有同样不改变序列的方法,支持同样的索引、切片操作。因此,构造函数的实参和 bytearray() 相同。
以下是一些快速使用的示例:
# 限制为 0 <= x < 256
bytes(10) # 指定长度的以零值填充的 bytes 对象
# b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
bytes(range(20)) # 通过由整数组成的可迭代对象
# b'\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b...'
obj = (1, 2)
bytes(obj) # 通过缓冲区协议复制现有的二进制数据
# b'\x01\x02'
bytes('hello', 'utf-8')
# b'hello'
它的语法构成是:
class bytes([source[, encoding[, errors]]])
它是一个类,可以初始化,生成一个字节序列对象。
接受三个可选参数:
source 参数可以通过以下方式初始化字节数组:
bytes(iterable_of_ints)
-> bytes,创建一个大小等于 iterable 数量的数组,并初始化为 iterable 元素,必须是 0<=x<256
之间整数的 iterablebytes(string, encoding[, errors])
-> bytes,将字符串转换为字节串,还必须提供编码和可选错误处理,见 str.encode()bytes(bytes_or_buffer)
-> bytes_or_buffer 的不可变副本,传入一个 Object,对象的只读缓冲区将用于初始化字节数组bytes(int)
-> 长度为 int 的初始化(\x00
)字节对象bytes()
-> 空的 bytes 对象总结,可以从以下内容构造一个不变的字节数组:
详见特殊方法:特殊方法 __bytes__()
对象的字节串表示。
更新时间:March 3, 2024, 1:24 p.m. 标签:python 字节序列 字节串