Cython 精度和数据类型

Posted

技术标签:

【中文标题】Cython 精度和数据类型【英文标题】:Cython precision and data types 【发布时间】:2016-03-11 12:44:36 【问题描述】:

我知道在 cython 中会丢失一些精度,因为 cython 浮点数与 python 浮点数不同。因此,我重新定义了一个变量,如下所示:

cdef long double variable=1*10**-10
print variable
0.0

然而这失败了:

cdef long double variable=0.0000000001
print variable
1e-10

成功了。我需要执行相对精确的计算,所以我很想了解这种行为。

【问题讨论】:

您可能想要检查交叉编译的输出。 如果添加小数点会怎样(例如 1.*10.**-10. )? 【参考方案1】:

看这里,这个错误似乎已在 Cython 3.0 中修复

https://github.com/cython/cython/issues/2133

【讨论】:

以上是关于Cython 精度和数据类型的主要内容,如果未能解决你的问题,请参考以下文章

数据类型转换

float 和 real 数据类型 的区别??

检测 Oracle 数字数据类型的实际精度和比例

MySQL数据类型--------浮点类型实战

Hive 数据类型:双精度和比例

float 和 real 数据类型 的区别??