【Python】处理json文件

1. JSON介绍

  首先介绍一下JSON文件格式,JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。
  它的格式是以大括号区分来存储数据,json和dict非常类似,都是key-value的形式,而且json和dict也可以非常方便的通过dumps和loads互转,但是它们之间还是有区别的:

json:是一种数据格式,是纯字符串。可以被解析成python的dict或其他形式。

dict:是一个完整的数据结构,是对hash table这一数据结构的实现,是一套从存储到提取都封装好的方案。它使用内置的hash函数来规划key对应的value的存储位置,从而获得O(1)的数据读取速度。

2. JSON库中 load()、dump()、loads()、dumps()用法简介:

首先我们若需要使用json库时,我们需要import json

1. load():读取json文件成字典类型数据

# 读取json文件内容,返回值是字典类型r
with open('./data.json','r',encoding='utf8')as fr:
    json_data = json.load(fp)
    print('这是文件中的json数据:',json_data)
    # 这里是<class 'dict'>
    print('这是读取到文件数据的数据类型:', type(json_data))
	

2. dump():字典写入到json文件

# 将字典类似数据写入到json文件中
dict1 = {'name': '张三', 'age': 21, 'sex': '男'}
with open('./person.json','a',encoding='utf8')as fw:
    json.dump(dict1,fp,ensure_ascii=False)  
 # 如果ensure_ascii ' '为false,则返回值可以包含非ascii值,即可以表示汉字等

3. loads(): 将json字符串转换成字典格式

# 以下是json字符串的形式
str1 = '{"name": "张三", "age": 18, "sex": "男"}'

with codecs.open("./data.json", 'r', encoding="utf-8") as fr:
	# 按行读取json字符串,并转化为字典数据tmp
    for line in fr.readlines():
        tmp = json.loads(line)

4. dumps(): 将字典数据转化为json格式

dict1 = {'name': '张三', 'age': 21, 'sex': '男'}
print('这是将字典转换之后的数据:',json.dumps(dict1,ensure_ascii=False))
# 转换后是json字符串类型 < class 'str'>
print('这是将字典转换之后的数据类型:',type(json.dumps(dict1,ensure_ascii=False))) #  如果ensure_ascii ' '为false,则返回值可以包含汉字等非ascii值。

总的来说,json库中主要用到的就是这几个方法,有什么别的常用的函数,大家评论提出呀!!!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郝同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值