将大型嵌套字典转储到 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响应转换为pandas数据框[重复]
如何使用 SwiftyJSON 从深度嵌套的 JSON 字典中获取字符串 [重复]