**造成的问题

今天遇到一个问题简直了。

程序里需要计算高次方,一个数的五次方

代码如下

np.array(  [1, x, x ** 2, x ** 3,       x ** 4,       x ** 5 ])

当x为90时,单独计算改矩阵值为5.9e9(正确值), 当单独进行该矩阵时是正确的。当放在主程序里计算时,一直计算出错误的值,为1.6e9(错误值)。

怀疑是numpy矩阵type的原因,将上述代码修改为

np.array(  [1, x, x ** 2, x ** 3,       x ** 4,       x ** 5 ], dtype = np.float64)

依然无效。

后怀疑是 python自带运算**的原因,改用math.pow程序似乎运行正常。

np.array(  [1, x, x ** 2, x ** 3,       x ** 4,       math.pow(x, 5) ], dtype= np.float64)

这次真的是遇到最玄学的一个问题了......以后再也不用**, 神坑啊。到目前为止,引起这个问题的原因依然未知。这个问题如果不是有心debug根本发现不了。。。。

此外,每次写完代码,最好回头看一下,经常犯一些变量名搞错,搞混的问题。还有就是比如i,j,ti这类循环变量慎用,还是谨慎多敲敲字幕。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值