python - 将 fortran double 格式读入 python

标签 python input double fortran

我正在尝试将 Fortran double (如 1.2345D+02)读入 python,但出现以下错误:

>>> float('1.2345D+02')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for float(): 1.2345D+02

按照 Python scientific notation using D instead of E 上的建议进行操作,我试过 numpy 但我也得到了同样的错误:

import numpy
>>> numpy.float("1.2345D+02")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for float(): 1.2345D+02

在 Python 中是否有一种解决方案可以读取那些 double 字而不只是将“D”更改为“E”?

编辑:我替换了字符串上的错误语法。但我仍然遇到错误。

最佳答案

float(str.replace("D", "E")) 有什么问题?

请注意,numpy 确实支持 fortran 表示法:numpy.float("1.2345D+02")

您似乎有一些更深层的目的,也许阐明它会有所帮助。

关于python - 将 fortran double 格式读入 python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5989351/

相关文章:

python - 在收到 "APM model error: string > 15000 characters"后,有没有办法增加 Gekko 中方程的行长度?

python - Pandas 按组将列转换为多个

python - Pandas 创建完美的面板数据,根据条件附加空行

jquery - 第二次单击后启用/禁用输入字段

arrays - 将 2D 矩阵的 2D 单元(大小一致)转换为 4D matlab double

如果可见,Python Selenium 单击一个元素

jQuery 在每个单选按钮或复选框旁边添加空标签

java - 如何以这种方式在 Java 中获取输入?

c - 为什么只有 1% 的时间我会得到不同的结果?

java - 无法使用 Apache Commons Lang 将双数组转换为字符串