我正在像这样打开一个二进制文件:
file = open("test/test.x", 'rb')
并逐行读取列表。每一行看起来有点像:
'\xbe\x00\xc8d\xf8d\x08\xe4.\x07~\x03\x9e\x07\xbe\x03\xde\x07\xfe\n'
我很难处理这些数据。如果我尝试打印每一行,python 会卡住,并发出哔哔声(我认为那里有一个二进制哔声代码)。如何安全地使用这些数据?如何将每个十六进制数转换为十进制?
最佳答案
要打印它,你可以这样做:
print repr(data)
对于整个十六进制:
print data.encode('hex')
对于每个字节的十进制值:
print ' '.join([str(ord(a)) for a in data])
要从数据中解压缩二进制整数等,就好像它们最初来自 C 样式结构一样,请查看 struct模块。
关于python - 在 Python 中处理二进制数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3059301/