什么是 bytes?
在 Python 中,bytes 是一种不可变的序列类型,用于表示原始的二进制数据。
它通常用于处理文件、网络通信、加密等需要精确控制字节的场景。
与字符串(str)不同,bytes 存储的是 0~255 范围内的整数(即字节值),
而不是 Unicode 字符。
如何创建 bytes 对象?
# 方法1:使用 b 前缀
b1 = b'hello'
# 方法2:使用 bytes() 构造函数
b2 = bytes([104, 101, 108, 108, 111]) # [104,101,...] 对应 'hello'
# 方法3:从字符串编码
b3 = 'hello'.encode('utf-8')
编码与解码
字符串(str)和字节(bytes)之间通过 编码(encode) 和 解码(decode) 相互转换。
s = "你好"
b = s.encode('utf-8') # str → bytes
print(b) # b'\xe4\xbd\xa0\xe5\xa5\xbd'
s2 = b.decode('utf-8') # bytes → str
print(s2) # 你好
交互式示例
输入一段文本,点击按钮查看其 UTF-8 编码后的字节表示: