python内置函数bytes详解

bytes功能作用

python内置函数bytes返回一个新的bytes类型的对象,bytes类型对象是不可变序列,包含范围为 0 <= x < 256 的整数。bytes可以看做是bytearray的不可变版本,它同样支持索引和切片操作 bytes语法 class bytes([source[, encoding[, errors]]])

bytes语法

class bytes([source[, encoding[, errors]]])

参数

可选形参source可以传入字符串,int,iterable 可迭代对象, 遵循 缓冲区接口 的对象, 不同的类型将有不同的效果:

  • string ,如果source是字符串,则必须指定encoding参数,bytearray() 会使用 str.encode() 方法来将 string 转变成 bytes
  • int ,如果source是int,会初始化大小为该数字的数组,并使用 null 字节填充
  • 如果是一个遵循 缓冲区接口 的对象,该对象的只读缓冲区将被用来初始化字节数组
  • iterable 可迭代对象, 要求元素的范围必须是 0 <= x < 256 的整数,它会被用作数组的初始内容
  • 如果没有传入source参数,则返回一个长度为0的bytes数组

返回值

bytes类型对象

示例代码

print(bytes())
print(bytes("python", encoding='utf-8'))
print(bytes(4))
print(bytes([1, 2, 3]))

程序输出结果

b''
b'python'
b'\x00\x00\x00\x00'
b'\x01\x02\x03'

扫描关注, 与我技术互动

QQ交流群: 211426309

加入知识星球, 每天收获更多精彩内容

分享日常研究的python技术和遇到的问题及解决方案