gpt4 book ai didi

python - 如何在 python 中获取 32 位 IEEE 值的整数值

转载 作者:行者123 更新时间:2023-11-30 22:57:47 26 4
gpt4 key购买 nike

如何在 python 中获取 32 位 IEEE 值的整数值例如 01000000010000000000000000000000 会给我整数 3。我该怎么做?

我会 0 100000001 0000000000000000000000 分别是符号位、指数和小数值。

我只是想知道如何在 python 中编写这样的代码。步骤是什么,或者如果有人可以帮助我编写代码来学习,那就太好了。谢谢!

最佳答案

这是一种相当迂回的方法...首先将字符串解释为整数(基数为 2):

>>> s = '01000000010000000000000000000000'
>>> i = int(s, 2)
>>> i
1077936128

现在您可以使用 struct.pack 获取该整数的整数位表示:

>>> b = struct.pack('i', i)
>>> b
'\x00\x00@@'

最后,您可以struct.unpack这些字节,就像它们是 float 一样:

>>> f, = struct.unpack('f', b)
>>> f
3.0

关于python - 如何在 python 中获取 32 位 IEEE 值的整数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36467876/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com