解决numpy.core._exceptions.UFuncTypeError: ufunc ‘add‘ did not contain a loop with signature matchin问题

最近在测试分销的项目,每次手动计算分销员的佣金,感觉特别麻烦,所以想着用 python 来实现自动计算佣金,但是在计算过程中遇到一个问题,如下:

问题描述

如图,在佣金矩阵计算相加的时候, numpy 抛了一个异常,这个异常在网上也没有找到相关资料。
解决numpy.core._exceptions.UFuncTypeError: ufunc ‘add‘ did not contain a loop with signature matchin问题_第1张图片
于是我打断点看了一下,发现在计算的时候, list 中的数据,返回的是 str 类型,导致矩阵相加的时候,计算失败了。
解决numpy.core._exceptions.UFuncTypeError: ufunc ‘add‘ did not contain a loop with signature matchin问题_第2张图片
然后我又去看了一下自己写的佣金计算规则的代码,需求中有个如果佣金金额大于两位小数的时候,会将数据四舍五入保留两位小数,但是保留两位小数数据类型就变成 str 类型了,然后我将数据类型转成 float,问题就处理啦~如图:

解决numpy.core._exceptions.UFuncTypeError: ufunc ‘add‘ did not contain a loop with signature matchin问题_第3张图片

你可能感兴趣的:(Python)