翼度科技»论坛 编程开发 python 查看内容

Python JSON 使用指南:解析和转换数据

5

主题

5

帖子

15

积分

新手上路

Rank: 1

积分
15
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 字符串:

  • dict(字典)
  • list(列表)
  • tuple(元组)
  • string(字符串)
  • int(整数)
  • float(浮点数)
  • True(真)
  • False(假)
  • None(空)
示例:将 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,或者扫描下方二维码,关注公众号,即可获取最新文章。
看完如果觉得有帮助,欢迎点赞、收藏关注


来源:https://www.cnblogs.com/xiaowange/p/17804154.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具