您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python – 从C创建的二进制文件中读取double的最佳方法是什么?

5b51 2022/1/14 8:21:31 python 字数 1334 阅读 507 来源 www.jb51.cc/python

C程序将连续的双精度值吐出到二进制文件中.我希望将它们读成Python.我尝试使用struct.unpack('d',f.read(8))编辑:我在C中使用以下内容来编写随机双数r = drand48(); fwrite((void*)&r, sizeof(double), 1, data); 错误现在已修复,但我无法读取第一个值.对于所有0.000

概述

C程序将连续的双精度值吐出到二进制文件中.我希望将它们读成Python.我尝试使用struct.unpack(‘d’,f.read(8))

编辑:
我在C中使用以下内容来编写随机双数

r = drand48();
fwrite((void*)&r,sizeof(double),1,data);

错误现在已修复,但我无法读取第一个值.对于所有0.000 ..数字,它将其读作3.90798504668055,但其余的都很好.

[编辑]我刚尝试用C读取文件,得到相同的结果(虽然精度略低:3.90799e-14)(使用printf(“%g”,val)),所以我想如果这个值是不正确的,它发生在写作方面,而不是阅读.

总结

以上是编程之家为你收集整理的python – 从C创建的二进制文件中读取double的最佳方法是什么?全部内容,希望文章能够帮你解决python – 从C创建的二进制文件中读取double的最佳方法是什么?所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶