编程语言
首页 > 编程语言> > 使用D代替E的Python科学记数法

使用D代替E的Python科学记数法

作者:互联网

Fortran程序生成的一些结果文件使用字母D而不是E报告双精度数字(科学记数法),例如:

1.2345D+02
# instead of
1.2345E+02

我需要使用Python处理大量的这些数据,我只是意识到它无法读取D表示法中的数字,例如:

>>> A = 1.0D+01
  File "<stdin>", line 1
    A = 1.0D+01
           ^
SyntaxError: invalid syntax

我可以更改我的语言环境,让Python知道D表示E吗?我真的不想进行全球搜索和替换!

解决方法:

从Python程序中最简单的方法就是在解释每个条目之前添加一个步骤:

>>> val = "1.5698D+03"  # 1,569.8
>>> print float(val.replace('D', 'E'))
1569.8

标签:scientific-notation,python,locale
来源: https://codeday.me/bug/20190929/1830657.html