bytes() 不可变字节序列

最后更新:2026-09-22

bytes() 不可变字节序列

bytes() 返回不可变字节序列;可由字节序列、字符串 + 编码或可迭代整数构造。

分类内置函数
类型内置函数
Python 版本all

📝 语法

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

⚙️ 参数

source 可选可选。整数、字符串、可迭代整数或字节类对象。(默认值:None)
encoding 可选source 为字符串时使用的编码名(如 'utf-8')。(默认值:None)
errors 可选编码错误处理方案(如 'strict' / 'ignore')。(默认值:None)

返回值:bytes。不可变字节序列。

💥 异常

▶ 示例

编辑下方代码,点击运行,在输出面板查看结果:

运行结果:

b'hello'
b'\xe4\xb8\xad'
更多实战案例即将上线,敬请期待。

❓ 常见问题

Qbytes(5) 返回什么?很多人以为是 b'5'?
A返回 b'\x00\x00\x00\x00\x00'。整数参数表示长度,生成对应数量的零字节,不是数字的字符串形式。
Qbytes() 和 bytearray() 有什么不同?
A核心区别是可变性:bytes 不可变,bytearray 可变;其余构造规则(整数、字符串+编码、可迭代整数)相同。
Q为什么 bytes('中文') 会报错?
A从字符串构造 bytes 必须同时传编码:bytes('中文', encoding='utf-8') 才行,否则抛 TypeError 提示缺少 encoding。
Q怎么从 bytes 转回字符串?
A用 decode() 方法,如 b'\xe4\xb8\xad'.decode('utf-8') 返回 '中';等价写法是 str(b, encoding='utf-8')。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏