将字节转换为Int时出错(Python 2.7)

2024-09-30 01:29:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Python2.7中工作,以字节形式读取数据(它是一个.ecg文件),但我需要将其转换为整数值。在

packetID = int(holter.read(1), 2)
packetSS = int(holter.read(2), 2)
packetFB = int(holter.read(2), 2)

这将返回错误

^{pr2}$

Tags: 文件read字节错误整数读取数据形式int
2条回答

int()将数字的字符串表示形式(如'1')转换为整数。如果要将一个字符bytestring转换为整数,可以使用ord()。但是,如果您想一次转换多个字节,可以使用struct模块,特别是struct.unpack。在

看起来你在读二进制数据,而不是ASCII数字,所以你需要一种不同的转换方式:^{} module。在

import struct
packetID = struct.unpack('B', holter.read(1))[0]
packetSS = struct.unpack('H', holter.read(2))[0]

或者,您也可以同时阅读:

^{pr2}$

相关问题 更多 >

    热门问题