【发布时间】:2023-01-20 19:34:41
【问题描述】:
此代码段引发错误,到目前为止我找不到解决方案。
from array import array
arr = array('B',[8, 3, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 2])
ab = arr.tobytes()
array.frombytes(ab)
TypeError Traceback (most recent call last)
Cell In[117], line 4
2 arr = array('B',[8, 3, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 2])
3 ab = arr.tobytes()
----> 4 array.frombytes(ab)
TypeError: descriptor 'frombytes' for 'array.array' objects doesn't apply to a 'bytes' object
我在 Python 3.10.8 和全新的 3.11.0 环境中进行了处理。两者都不走运
【问题讨论】:
-
array类中定义的frombytes方法是一个普通的实例方法,不是classmethod或staticmethod。它需要在类的实例上调用。像这样从类本身调用它意味着ab将用作self,这是行不通的。链接的副本是我能找到的关于这个主题的最流行的副本;我会继续寻找更通用的规范。 -
这回答了你的问题了吗? Convert bytearray to array.array('B')
标签: python