按照惯例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
不管它可能是一个标准(!)为什么会这样?