2024-05-15 08:03:53 发布
网友
对于以下python代码:
python
pt = bytearray.fromhex('32 43 f6 a8 88 5a 30 8d 31 31 98 a2 e0 37 07 34') state = bytearray(pt)
如果我使用:
print state
它发出2Cö¨ˆZ0?11˜¢à74
2Cö¨ˆZ0?11˜¢à74
那么如何恢复bytearray中的内容呢?例如,将它们放入一个类似[]的列表中。
bytearray
[]
可以使用python在bytearray和list之间进行转换 具有相同名称的内置函数。
>>> x=[0,1,2,3,4] # create a list >>> print x [0, 1, 2, 3, 4] >>> y = bytearray(x) # convert the list to a bytearray >>> print y (garbled binary) <-- prints UGLY! >>> z = list(y) # convert the bytearray back into a list >>> print z [0, 1, 2, 3, 4]
索引bytearray将导致无符号字节。
>>> pt[0] 50 >>> pt[5] 90
您可以使用简单的字符串方法创建自己的方法:
string = '32 43 f6 a8 88 5a 30 8d 31 31 98 a2 e0 37 07 34' number = [int(i, 16) for i in string.split()]
现在你有了一个你想要的转换后的数字列表。
可以使用python在bytearray和list之间进行转换 具有相同名称的内置函数。
索引
bytearray
将导致无符号字节。您可以使用简单的字符串方法创建自己的方法:
现在你有了一个你想要的转换后的数字列表。
相关问题 更多 >
编程相关推荐