将从 socket.recv (字节)接收到的数据转换为 ironpython 中的布尔值

Convert data received from a socket.recv (bytes) to a boolean value in ironpython

我正在使用 python 脚本作为 TCP 客户端。有一次它从服务器接收到应该是 bool 的返回值。当我第一次编写此代码并在使用常规 python 安装的机器上对其进行测试时,我能够使用结构模块中的以下代码将接收到的数据解压缩为 bool

data = socket.recv(BUFFER_SIZE)
result = struct.unpack("?", data)[0]
if not result:
    #do stuff here

我目前需要在仅使用铁的环境中执行相同的任务python。当我尝试 运行 代码时,我得到以下信息:

ImportError: No module named struct

经过一些挖掘后,铁 python 中似乎不存在常规 python 中的结构模块(我相信存在结构模块,但它用于与 c/c++ 结构)

如何从 TCP socket.recv 获取数据并将其从实际接收到的字节格式转换为我需要的 bool 类型 python?

经过更多挖掘后,我遇到了 this post,它询问有关将字节字符串转换为 int 的问题。

我发现 this answer 中提供的解决方案避免了导入任何模块并且工作得很好,我需要执行额外的 bool 转换,所以我的最终结果如下所示:

data = sock.recv(BUFFER_SIZE)
result = bool(int(data.encode('hex'), 16))