python中JSON对象的类型是啥?

Posted

技术标签:

【中文标题】python中JSON对象的类型是啥?【英文标题】:What is the type of a JSON object in python?python中JSON对象的类型是什么? 【发布时间】:2016-10-07 14:30:25 【问题描述】:

我是 JSON 新手。我有一本字典,我使用

将其转换为 JSON 对象
            myJsonObject = json.dumps(myDictionary) 

但是如果我检查类型,我会得到<type 'str'>

字符串是 JSON 对象的预期输出吗?

PS:Python 2.7

更新:如果转储不是正确的方法,我如何获得 JSON 类型?

【问题讨论】:

什么是“JSON 类型”?通常 JSON 用于通信(例如后端 Python 和前端 javascript 之间)。在它们之间传递对象是没有意义的,因此会发送一个 JSON 字符串,因为它是两种语言都有解析工具的常见文字对象格式。 JSON 是一种将事物编码为字符串的方式,因此将某些事物转换为 JSON 意味着将其转换为字符串。所以我不确定你为什么在这里期待字符串以外的东西。你想拿回什么样的东西,为什么? @TannerSwett,感谢您的评论。我期待 JSON,因为我正在尝试使用请求进行简单的 HTTP POST。有效载荷应该是 JSON。所以我尝试了一个 python 字典,但我得到了 HTTP 500。 如果我的理解是正确的,您应该能够获取json.dumps 给您的字符串并通过HTTP 发送。这听起来像你想做的事吗? 【参考方案1】:

当然,这叫"Serialization"——你是dumping a Python data structure into a JSON formatted string:

json.dumps()

使用 conversion table 将 obj 序列化为 JSON 格式的 str。

如果您使用loads() 加载 JSON 字符串,这将是“反序列化”,您将获得 Python 列表或字典。

【讨论】:

【参考方案2】:

JSON 的 N 代表 Notation ;它确实是一种数据格式规范。 JSON 对象通常旨在用作存储或进程间通信格式。这就是为什么它在 Python 中是 write() 接受的通用平面格式:一个字符串对象。

您可以将其打印到屏幕上,将其保存到文件中,或将其传送给另一个程序以验证它是否正确并包含预期的数据。

【讨论】:

以上是关于python中JSON对象的类型是啥?的主要内容,如果未能解决你的问题,请参考以下文章

将 json 对象存储到 postgresql 中的数据类型是啥?

此 JSON 对象中键的类型是啥 yourVariable: "nothing yet"

在 AFNetworking 的 JSONRequestOperationWithRequest:success:failure: 方法中,JSON 响应是啥类型的对象?

python爬虫的一个问题,json.loads()不式转化字符串为dict类型吗?

(JSON) 序列化和反序列化,这个是啥意思呀?

在 MySQL 中存储相当大的 JSON 对象的最佳方法是啥