我正在用 Python 编写代码,调用一些用 Fortran 编写的子例程。当变量在 Fortran 中定义为:
real*8, intent(in) :: var1,var2
并且,分别在 Python 中,
var1 = 1.0
var1 = 1.0
一切都很好。但如果我定义一个扩展实数,那就是:
real*16, intent(in) :: var1,var2
并在 python 中使用
import numpy as np
var1 = np.float16(2)
var2 = np.float16(2)
将变量传递给 fortran 例程时,变量采用一个奇怪的数字。谁能看到我做错了什么?