Python中的bytearray是可变的二进制数据序列,用于存储0-255整数,支持从字符串、字节、列表等创建,可修改元素、切片、追加和扩展,适用于处理文件、网络或多媒体中的二进制数据。

Python中的字节数组(bytearray)是一种可变的序列类型,用来存储0到255之间的整数,常用于处理二进制数据。它和bytes类型很像,但关键区别是bytearray可以修改,而bytes是不可变的。
你可以通过多种方式创建一个bytearray:
ba = bytearray("hello", "utf-8")
ba = bytearray(b"hello")
ba = bytearray([104, 101, 108, 108, 111])
ba = bytearray(5)(内容初始化为0)因为bytearray是可变的,你可以直接修改其中的元素:
ba[0] = 72 # 将第一个字节改为'H'
ba[1:3] = b"EL"
ba.append(33) # 添加'!'
ba.extend(b" world")
字节数组在处理网络数据、文件读写或图像音频等二进制内容时非常有用。
立即学习“Python免费学习笔记(深入)”;
with open("data.bin", "rb") as f:<br> data = bytearray(f.read())<br>data[0] = 0xFF # 修改第一个字节packet = bytearray(4)<br>packet[0] = 0x01<br>packet[1] = 0x02<br>packet[2:] = b"\x03\x04"
b = bytes(ba) # 转为不可变bytesnew_ba = bytearray(b) # 再转回来
基本上就这些。掌握bytearray的关键是理解它是“可变的二进制数据容器”,适合需要频繁修改字节内容的场景。不复杂但容易忽略的是:操作时确保数值在0~255之间,否则会报错。
python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号