当返回/产生大量二进制数据时,返回bytes
或bytearray
是否更惯用?
我的函数在bytearray
中累积数据,目前返回bytes(myarray)
。是否有任何理由支持或反对回归
直接bytearray
?特别是,如果函数需要bytes
并获得bytearray
,是否存在任何可能的陷阱(只要它不检查实际类型)?
它具有可变序列的大多数常用方法,在可变序列类型中描述,以及
bytes
类型具有的大多数方法,请参阅Bytes and Byte Array Methods。< / p>
(我的重点。)这表明bytearray
可用于预期bytes
的任何地方。
答案 0 :(得分:0)
对于每种可能的情况,它们都不可互换。某些代码可能使用类型检查,它们具有不同的类型。与其姓名一样,类型为bytearray
和bytes
。
问题编辑后:
唯一的区别是bytes is an immutable version of bytearray。
因此,bytearray
可用于预期bytes
的任何地方。