一个numpy.float32类型数据存入mongodb引发的异常

问题背景:最近在项目中需要算两个语句的语义相似度,程序使用python写的,然后离线存入到mongodb中,原本是把算出来的语义相似度得分直接赋给某个字段,然后整体存入到mongodb中,结果就报了如下的错误:

bson.errors.InvalidDocument: Cannot encode object: 0.6623089

这是因为语义相似度得分0.6623089不是一个浮点数,而是一个numpy.float32类型的对象,mongodb是无法对一个对象进行编码存储的,所以这里需要对读取到的结果进行强制类型转换,转为float,然后再存入的时候就不会有问题了

原文地址:https://www.cnblogs.com/earthhouge/p/10165720.html