python之json的使用

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
json函数的简单使用

python开发中使用json函数,导入json包

import json
json.dumps()   # 将 Python 对象编码成 JSON 字符串
json.loads()   # 将JSON字符串转为python对象

json.dumps
import json
a = {
    "name": "hello",
    "age": "18",
    "addr": "广州市天河区"
}

print(json.dumps(a))
# {"name": "hello", "age": "18", "addr": "\u5e7f\u5dde\u5e02\u5929\u6cb3\u533a"}
print(type(json.dumps(a))
# <class 'str'>

以上代码可以看出json.dumps将dict对象转为了json字符串,但是有一个问题,dict有value为中文时,转化以后中文变成了unicode,其实指定json.dumps中的ensure_ascii参数可以解决这个问题

import json
a = {
    "name": "hello",
    "age": "18",
    "addr": "广州市天河区"
}

print(json.dumps(a, ensure_ascii=False))
# {"name": "hello", "age": "18", "addr": "广州市天河区"}

如果想要进行json格式输出的话也只需要指定参数哟,并且sort_keys字段进行根据key的acii码排序

import json
a = {
    "name": "hello",
    "age": "18",
    "addr": "广州市天河区"
}
# 键值排序、缩进为 2、以',', ': '为分隔
print(json.dumps(a, ensure_ascii=False,sort_keys=True, indent=2, separators=(', ', ': ')))
# {
#  "addr": "广州市天河区", 
#  "age": "18", 
#  "name": "hello"
# }

json格式输出只是为了让我们更直观的知道各key对应的value, 如果数据较多的情况下,json格式化输出还是必要的

json.loads
import json
a = '{"name": "hello","age": "18","addr": "广州市天河区"}'
print(json.loads(a))
# {"name": "hello", "age": "18", "addr": "广州市天河区"}
print(type(json.loads(a)))
# <class 'dict'>

json.loads将json字符串转换成了python dict对象。在爬虫的时候,使用requests或者urllib从其他网站上获取到数据得到的都是json字符串,所以这里用的 json.loads 可以帮到很多忙,转化成python的dict对象以后,可以进行根据 key 取相对应的value

菜鸟教程  点击进行更多的知识点学习

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值