在以下代码中,coeff1 和 coeff2 都是 Decimal 对象。当我使用 type(coeff1) 检查它们的类型时,我得到(类“decimal.Decimal”),但是当我编写测试代码并检查十进制对象时,我得到十进制。十进制,不带词类
coeff1 = system[i].normal_vector.coordinates[i]
coeff2 = system[m].normal_vector.coordinates[i]
x = coeff2/coeff1
print(type(x))
system.xrow_add_to_row(x,i,m)
另一个问题是当我将函数 xrow_add_to_row 的第一个输入更改为负 x 时:
system.xrow_add_to_row(-x,i,m)
我在一行中收到无效操作错误above更改后的代码:
<ipython-input-11-ce84b250bafa> in compute_triangular_form(self)
93 coeff1 = system[i].normal_vector.coordinates[i]
94 coeff2 = system[m].normal_vector.coordinates[i]
---> 95 x = coeff2/coeff1
96 print(type(coeff1))
97 system.xrow_add_to_row(-x,i,m)
InvalidOperation: [<class 'decimal.DivisionUndefined'>]
但在测试代码中,我再次将负数与 Decimal 对象一起使用,并且效果很好。知道可能是什么问题吗?谢谢。