+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

获取数字(int,float或double)的binary32表示形式的pythonic方法

发布于2021-01-17 16:45     阅读(814)     评论(0)     点赞(29)     收藏(0)


0

1

2

3

4

5

6

Python int相关的二进制字符串吗?,我想知道一种Python方式来获取多个int,float或double的IEEE-754 binary32表示形式。

例如,将42.0转换为1 10000100 01010 000000000000000000


解决方案


尝试这个:

import struct

getBin = lambda x: x > 0 and str(bin(x))[2:] or "-" + str(bin(x))[3:]

def floatToBinary32(value):
    val = struct.unpack('I', struct.pack('f', value))[0]
    return getBin(val)

binstr = floatToBinary32(42.0)
print('Binary equivalent of 42.0:')
print(binstr + '\n')

0

1

2

3

4

5

6

7



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接: https://www.pythonheidong.com/blog/article/777273/59a6ab27a42594498339/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

29 0
收藏该文
已收藏

评论内容:(最多支持255个字符)