按照惯例1e3是指10**3。
>>> 1e3
1000.0
>>> 10**3
1000
类似情况exp(3)比较e**3。
>>> exp(3)
20.085536923187668
>>> e**3
20.085536923187664
但是现在注意指数是否是一个float值:
>>> exp(3.1)
22.197951281441636
>>> e**3.1
22.197951281441632
这很好。现在来看第一个例子:
>>> 1e3.1
File "<stdin>", line 1
1e3.1
^
SyntaxError: invalid syntax
>>> 10**3.1
1258.9254117941675
这表明Python也不喜欢1e3.1。Fortran不管它可能是一个标准(!)为什么会这样?