我想把一个Python浮点转换成一个字节数组,把它编码成32位的小端IEEE浮点数,以便将它写入一个二进制文件。你知道吗
在python3中,现代的Python方法是什么?对于int,我可以执行my_int.to_bytes(4,'little')
,但是对于float没有to_bytes
方法。你知道吗
如果我能对numpy数组中的每个float(使用dtype)进行一次拍摄,那就更好了数字浮点数32). 但请注意,我需要将其作为字节数组来获取,而不仅仅是立即将数组写入文件。你知道吗
有一些听起来类似的问题,但它们似乎主要是关于获取十六进制数字,而不是写入二进制文件。你知道吗
你可以用
struct
到pack
像这样的bytes
使用右边的
dtype
可以将数组的数据缓冲区写入bytestring或二进制文件:改变偏好:
NumPy数组附带了一个^{} 方法,该方法提供了它们的原始数据字节的转储:
您可以指定一个
order
参数来为多维数组使用C顺序(行主键)或F顺序(列主键)。你知道吗由于要将字节转储到文件中,您可能还对^{} 方法感兴趣,该方法直接将字节转储到文件中:
tofile
总是使用C顺序。你知道吗如果需要更改endianness,可以使用^{} 方法。(
newbyteorder
有一个更方便的签名,但不会更改底层字节,因此不会影响tobytes
)相关问题 更多 >
编程相关推荐