bytes不可变,用于只读二进制数据,支持字面量b''且可哈希;bytearray可变,可通过构造函数创建,适合需修改的场景。

在Python中,bytes 和 bytearray 是两种用于处理二进制数据的内置类型。它们都存储字节(0 到 255 之间的整数),但在可变性上有关键区别。
bytes 类型表示一个不可变的字节序列。一旦创建,就不能修改其中的内容。这类似于字符串(str)——你不能更改某个位置的字节。
常见创建方式:
b'hello'
bytes([104, 101, 108, 108, 111])
bytes('hello', 'utf-8') 或 'hello'.encode('utf-8')
操作示例:
立即学习“Python免费学习笔记(深入)”;
x = b'hello' print(x[0]) # 输出: 104 (字符 'h' 的 ASCII 值) # x[0] = 72 # 错误!bytes 不支持 item 赋值
bytearray 与 bytes 类似,但它是可变的。你可以修改、添加或删除其中的字节。这使得它在需要频繁修改二进制数据时非常有用。
创建方式与 bytes 类似,只是使用 bytearray():
bytearray(b'hello')bytearray([104, 101, 108, 108, 111])bytearray('hello', 'utf-8')可变性示例:
y = bytearray(b'hello') y[0] = 72 # 修改第一个字节为 'H' (ASCII 72) print(y) # 输出: bytearray(b'Hello') y.append(33) # 添加感叹号 print(y) # 输出: bytearray(b'Hello!')
基本上就这些。根据是否需要修改数据,选择 bytes 或 bytearray 即可。
以上就是python中bytes和bytearray的介绍的详细内容,更多请关注php中文网其它相关文章!
python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号