ToB企服应用市场:ToB评测及商务社交产业平台

标题: Python JSON 使用指南:解析和转换数据 [打印本页]

作者: 熊熊出没    时间: 2023-11-29 17:03
标题: Python JSON 使用指南:解析和转换数据
JSON 是一种用于存储和交换数据的语法。JSON 是文本,使用 JavaScript 对象表示法编写。
Python 中的 JSON

Python 有一个内置的 json 包,可用于处理 JSON 数据。
示例:导入 json 模块:
  1. import json
复制代码
解析 JSON - 从 JSON 转换为 Python

如果您有一个 JSON 字符串,可以使用 json.loads() 方法来解析它。结果将是一个 Python 字典。
示例:从 JSON 转换为 Python:
  1. import json
  2. # 一些 JSON:
  3. x = '{ "name":"John", "age":30, "city":"New York"}'
  4. # 解析 x:
  5. y = json.loads(x)
  6. # 结果是一个 Python 字典:
  7. print(y["age"])
复制代码
从 Python 转换为 JSON

如果您有一个 Python 对象,可以使用 json.dumps() 方法将其转换为 JSON 字符串。
示例:从 Python 转换为 JSON:
  1. import json
  2. # 一个 Python 对象(字典):
  3. x = {
  4.   "name": "John",
  5.   "age": 30,
  6.   "city": "New York"
  7. }
  8. # 转换为 JSON:
  9. y = json.dumps(x)
  10. # 结果是一个 JSON 字符串:
  11. print(y)
复制代码
您可以将以下类型的 Python 对象转换为 JSON 字符串:
示例:将 Python 对象转换为 JSON 字符串,并打印值:
  1. import json
  2. print(json.dumps({"name": "John", "age": 30}))
  3. print(json.dumps(["apple", "bananas"]))
  4. print(json.dumps(("apple", "bananas")))
  5. print(json.dumps("hello"))
  6. print(json.dumps(42))
  7. print(json.dumps(31.76))
  8. print(json.dumps(True))
  9. print(json.dumps(False))
  10. print(json.dumps(None))
复制代码
当您从 Python 转换为 JSON 时,Python 对象将被转换为 JSON(JavaScript)等效对象:
Python  JSON
dict  对象(Object)
list  数组(Array)
tuple  数组(Array)
str  字符串(String)
int  数字(Number)
float  数字(Number)
True  true
False  false
None  null
示例:将包含所有合法数据类型的 Python 对象转换为 JSON 字符串:
  1. import json
  2. x = {
  3.   "name": "John",
  4.   "age": 30,
  5.   "married": True,
  6.   "divorced": False,
  7.   "children": ("Ann","Billy"),
  8.   "pets": None,
  9.   "cars": [
  10.     {"model": "BMW 230", "mpg": 27.5},
  11.     {"model": "Ford Edge", "mpg": 24.1}
  12.   ]
  13. }
  14. print(json.dumps(x))
复制代码
格式化结果,上面的示例打印了一个 JSON 字符串,但它不太容易阅读,没有缩进和换行。json.dumps() 方法具有参数,以使结果更易阅读:
示例:使用 indent 参数来定义缩进的数量:
  1. json.dumps(x, indent=4)
复制代码
您还可以定义分隔符,默认值为 (", ", ": "),这意味着使用逗号和空格来分隔每个对象,使用冒号和空格来分隔键和值:
示例:使用 separators 参数来更改默认分隔符:
  1. json.dumps(x, indent=4, separators=(". ", " = "))
复制代码
对结果进行排序,json.dumps() 方法具有参数,可以对结果中的键进行排序:
示例:使用 sort_keys 参数来指定结果是否应按键排序:
  1. json.dumps(x, indent=4, sort_keys=True)
复制代码
最后

为了方便其他设备和平台的小伙伴观看往期文章:公众号搜索Let us Coding,或者扫描下方二维码,关注公众号,即可获取最新文章。
看完如果觉得有帮助,欢迎点赞、收藏关注


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4