将大型嵌套字典转储到 JSON 对象中[重复]

Posted

技术标签:

【中文标题】将大型嵌套字典转储到 JSON 对象中[重复]【英文标题】:Dumping large nested dictionary into JSON object [duplicate] 【发布时间】:2019-09-25 15:43:51 【问题描述】:

我有一个包含字符串、浮点数和整数作为数据的大型嵌套字典。我想将其转储为 JSON 字符串,但直接转储给我一个错误:

json_dictionary = json.dumps(mapped_dictionary)


TypeError: Object of type int64 is not JSON serializable

所以我尝试使用这个:

json_dictionary = json.dumps(str(mapped_dictionary))

起初这似乎可行,但后来我发现嵌套字典上的 str 函数会在某个点之后截断值,然后显示其余内容。它不会转储整个嵌套字典,它相当大。

我想知道str 函数是否有限制,如果有,将包含混合类型数据的嵌套字典转储到 JSON 对象中的好方法是什么?

【问题讨论】:

理想情况下,您希望遍历字典并将每个 int64 转换为 int。不要依赖str() 【参考方案1】:

正如指定的错误,JSON 不知道如何序列化 int64 类型的对象。将这些对象转换为 int 应该可以解决问题。虽然我不知道您的问题的全部范围,但this 应该会有所帮助。

【讨论】:

以上是关于将大型嵌套字典转储到 JSON 对象中[重复]的主要内容,如果未能解决你的问题,请参考以下文章

附加到嵌套 JSON 字典的顶部 [重复]

将带有嵌套字典的json响应转换为pandas数据框[重复]

什么可以为大型数据集提供更好的性能?嵌套字典还是对象字典?

如何使用 SwiftyJSON 从深度嵌套的 JSON 字典中获取字符串 [重复]

如何在带有嵌套字典的嵌套循环中正确使用字典“.update”函数[重复]

使用 Newtonsoft 解析带有嵌套和变量字典的 Json [重复]