Python的json库常用方法

举报
python教程 发表于 2023/09/04 16:43:55 2023/09/04
【摘要】 1. json.load(json_data)与json.dump(python_data)json.load()用来将读取json文件,json.dump()用来将数据写入json文件 2. json.loads()与json.dumps()json.dumps 将 Python 对象编码成 JSON 字符串json.loads 将已编码的 JSON 字符串解码为 Pytho...

1. json.load(json_data)与json.dump(python_data)

json.load()用来将读取json文件,json.dump()用来将数据写入json文件

2. json.loads()与json.dumps()

  • json.dumps 将 Python 对象编码成 JSON 字符串
  • json.loads 将已编码的 JSON 字符串解码为 Python 对象

详解:

1.读取json数据

with open('1.json', 'r') as f:
    data = json.load(f)

2.写入json数据

with open('2.json', 'w') as f:
    json.dump(data, f)

3.把python字典数据格式化成json字符串输出

参数介绍:
(1)sort_keys是告诉编码器按照字典key排序(a到z)输出。
(2)indent参数根据数据格式缩进显示,读起来更加清晰, indent的值,代表缩进空格式。
(3)separators参数的作用是去掉‘,’ ‘:’后面的空格,在传输数据的过程中,越精简越好,冗余的东西全部去掉。
(4)输出真正的中文需要指定ensure_ascii=False;默认使用的ascii编码。
(5)skipkeys参数,在encoding过程中,dict对象的key只可以是string对象,如果是其他类型,那么在编码过程中就会抛出ValueError的异常。skipkeys可以跳过那些非string对象当作key的处理。

data = [{ 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 }]
jsondata = json.dumps(data[0],sort_keys=True,indent=4,separators=(',',':'))
print(type(jsondata))  #<class 'str'>
print(jsondata)

把json数据格式化成python对象
为了方便直接使用上面的例子结果

#Python小白学习交流群:153708845
text = json.loads(jsondata)
print(type(text))  #<class 'dict'>
print(text)
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。