操作 10**(-9) 在 python 中正确,但在 Cython 中错误
Operation 10**(-9) correct in python, but wrong in Cython
非常基本的问题:
在我的 python 2.7
代码中,我的情况大致如下:
b=5.0*10**(-9)
a=9
print(a)
c=a/(1.0*b)
代码在 python
/ spyder
(64 位)中运行,但在 Cython
中失败,因为浮点除以 0。打印的数字为 0。当我定义
b=0.000000005
除法很好,打印的数字也很好。错误是什么?
我可以用 cython 0.22
重现你的错误,我认为这个错误与 cython-users
上的这个 thread 有关。
好像cython
在计算10**-9
的时候遇到了麻烦。如果您改用 10**-9.0
,一切正常。
请注意,您可以通过将 5.0*10**(-9)
替换为 5e-9
来消除错误并美化代码片段。
尽管如此,这似乎是 cython
中的错误,而不是您的代码库中的错误。
非常基本的问题:
在我的 python 2.7
代码中,我的情况大致如下:
b=5.0*10**(-9)
a=9
print(a)
c=a/(1.0*b)
代码在 python
/ spyder
(64 位)中运行,但在 Cython
中失败,因为浮点除以 0。打印的数字为 0。当我定义
b=0.000000005
除法很好,打印的数字也很好。错误是什么?
我可以用 cython 0.22
重现你的错误,我认为这个错误与 cython-users
上的这个 thread 有关。
好像cython
在计算10**-9
的时候遇到了麻烦。如果您改用 10**-9.0
,一切正常。
请注意,您可以通过将 5.0*10**(-9)
替换为 5e-9
来消除错误并美化代码片段。
尽管如此,这似乎是 cython
中的错误,而不是您的代码库中的错误。