json的四个函数的区别

爬虫的过程中我们经常需要json和python字符串之间进行转换,在这里我们先来简单说一下json四个函数的作用。

1. json.loads()

把Json格式字符串解码转换成Python对象 从json到python的类型转化对照如下:

 json数据自动按Unicode存储
uDict= "{\"city\": \"\u4e0a\u6d77\", \"name\": \"\u9ad8\u6821\"}"
strDict=json.loads(uDict)
print(strDict) 

结果:'{"city": "上海", "name": "高校"}'

2. json.dumps()

实现python类型转化为json字符串,返回一个str对象 把一个Python对象编码转换成
Json字符串从python原始类型向json类型的转化对照如下:

import json
import chardet
listStr = [1, 2, 3, 4]
tupleStr = (1, 2, 3, 4)
dictStr = {"city": "北京", "name": "大猫"}
json.dumps(listStr)     '[1, 2, 3, 4]'
json.dumps(tupleStr)    '[1, 2, 3, 4]'
注意:json.dumps() 处理中文时默认使用的ascii编码,会导致中文无法正常显示

 print(json.dumps(dictStr))
    记住:处理中文时,添加参数 ensure_ascii=False 来禁用ascii编码
    print(json.dumps(dictStr, ensure_ascii=False))
    {"city": "北京", "name": "大刘"}
    json.dumps(res, indent=2, sort_keys=True)格式化输出并按键排序。

3. json.dump()
  将Python内置类型序列化为json对象后写入文件

 json_dump.py
    listStr = [{“city”: “北京”}, {“name”: “大刘”}]
    dictStr = {“city”: “北京”, “name”: “大刘”}
     json.dump(dictStr,open(“dic.json”,”w”), ensure_ascii=False,indet=4)

4. json.load()

读取文件中json形式的字符串元素 转化成python类型

总结:

不加s是对文件的操作,加s不针对文件操作,只是进行数据类型转换。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值