0

我有一个包含一些文档的 ArangoDB 集合。我需要获取其中一个,添加或更新一些数据并保存。

要获取文档,我在实例上使用Document _key字段:Collection

doc = collection[key]

然后,我用dict数据更新:

for k, v in data.items():
    doc[k] = v

最后,我保存它

doc.save()

不幸的是,其中一些int被转换为string

就在保存之前:

在此处输入图像描述

当我重新加载它时doc2 = collection[key]

在此处输入图像描述

从我所看到的情况来看,我想我可以在保存之前将所有内容转换intfloat,但这有点乱。

我究竟做错了什么?

4

1 回答 1

0

好吧,事实证明,有些int地方实际上numpy.int64和 pyarango 将它们处理为string

我简单int(value) if isinstance(value, np.int64) else value地解决了这个问题(在我的例子中递归调用,使用这个答案)。

于 2022-02-14T14:13:36.633 回答