fledgling 发表于 2022-3-1 20:42:21

用Numpy求行列式的值

用numpy求行列式的值,为什么还有小数点?
import numpy as np
D = np.array([,[-2,2,1],[-3,4,-2]])
d = np.linalg.det(D)
print(d)

计算结果为什么是:-14.000000000000004
哪里来的小数点?为什么?

大马强 发表于 2022-3-1 22:25:01

底层计算的精度问题导致的
import numpy as np
D = np.array([, [-2, 2, 1], [-3, 4, -2]])
d = np.linalg.det(D)
print("%.0f" % d)

fledgling 发表于 2022-3-2 07:59:52

大马强 发表于 2022-3-1 22:25
底层计算的精度问题导致的

最后一行代码是什么意思?谢谢大神

大马强 发表于 2022-3-2 08:06:07

print("%.0f" % d)
字符串的格式化,作用是不带小数点输出

fledgling 发表于 2022-3-2 09:10:20

大马强 发表于 2022-3-2 08:06
字符串的格式化,作用是不带小数点输出

谢谢
页: [1]
查看完整版本: 用Numpy求行列式的值