Python中的数据类型:bytes

1. 什么是bytes

在Python中,bytes数据类型用于表示一系列字节。
它是一个不可变的序列,一旦创建就无法修改。
bytes常用于处理二进制数据,例如读写文件、网络通信和加密。

2. 如何创建bytes

在Python中,有几种方法可以创建bytes对象:

使用bytes()构造函数

可以使用bytes()构造函数从整数序列或字符串创建bytes对象。

✏️ 语法

Python
bytes(sequence)

在上述代码中,sequence可以是列表、元组、范围或包含0到255之间整数的任何可迭代对象。

使用b前缀

在Python中,可以使用b前缀从字符串字面值创建bytes对象。
字符串应只包含ASCII字符。

✏️ 语法

Python
b'string'

在上述代码中,字符串应该用单引号括起来,并以字母b为前缀。

使用bytearray()构造函数

可以使用bytearray()构造函数创建一个可变版本的bytes对象。

✏️ 语法

Python
bytearray(sequence)

在上述代码中,sequence可以是列表、元组、范围或包含0到255之间整数的任何可迭代对象。

3. 如何使用bytes

一旦创建了bytes对象,可以在各种操作和函数中使用它。
以下是一些示例:

访问单个字节

可以使用索引和切片来访问bytes对象,就像字符串和列表一样。

📘 示例

Python
b = bytes([65, 66, 67, 68])
print(b[0])  # 输出:65
print(b[1:3])  # 输出:b'BC'

将bytes转换为字符串

可以使用decode()方法将bytes对象转换为字符串。

📘 示例

Python
b = b'Hello'
s = b.decode()
print(s)  # 输出:Hello

将字符串转换为bytes

可以使用encode()方法将字符串转换为bytes对象。

📘 示例

Python
s = 'Hello'
b = s.encode()
print(b)  # 输出:b'Hello'

遍历bytes

可以使用for循环遍历bytes对象。

📘 示例

Python
b = bytes([65, 66, 67, 68])
for byte in b:
    print(byte)

在上述代码中,bytes对象中的每个字节都会打印在单独的行上。