Python的json库的作用是什么,基本用法是怎样
Admin 2022-08-08 群英技术资讯 1207 次浏览
这篇文章主要介绍“Python的json库的作用是什么,基本用法是怎样”,有一些人在Python的json库的作用是什么,基本用法是怎样的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。主要用于将python对象编码为json格式输出或存储,以及将json格式对象解码为python对象。

一个 JSON 对象可以写为如下形式:
[{
"name": "小明",
"height": "170",
"age": "18"
}, {
"name": "小红",
"height": "165",
"age": "20"
}]
由中括号包围的就相当于列表类型,列表中的每个元素可以是任意类型,这个示例中它是字典类型,由大括号包围。
JSON 可以由以上两种形式自由组合而成,可以无限次嵌套,结构清晰,是数据交换的极佳方式。
下面先来了解一下json中loads,和load

例如,有一段 JSON 形式的字符串,它是 str 类型,我们用 json.loads转换成python的数据结构,变成列表或字典,这样我们就能进行操作了。
import json
data = '''
[{
"name": "小明",
"height": "170",
"age": "18"
}, {
"name": "小红",
"height": "165",
"age": "20"
}]
'''
# 打印data类型
print(type(data))
# json类型的数据转化为python类型的数据
new_data = json.loads(data)
# 打印data类型
print(type(new_data))
运行结果如下

这样来我们就可以用索引获取对应的内容了,例如想要获取第一个元素里的name属性,可以使用如下方式:
import json
data = '''
[{
"name": "小明",
"height": "170",
"age": "18"
}, {
"name": "小红",
"height": "165",
"age": "20"
}]
'''
# 打印data类型
print(type(data))
# json类型的数据转化为python类型的数据
new_data = json.loads(data)
# 获取内容
name = new_data[0]['name']
new_name = new_data[0].get('name')
# 打印转换后data类型
print(type(new_data))
print(name)
print(new_name)
运行结果

以上就是loads的用法。
load的用法是把json格式文件,转换成python类型的数据。
注意 :load方法操作的是整个文件对象,这里是将整个整个文件对象里面的内容转化为json对象。(下图是文件操作对象)

示例
import json
import json
# load的用法是把json格式文件,转换成python类型的数据。
# 构建该文件的文件对象
with open('test1.json',encoding='utf-8')as fp:
# 加载垓文件对象,转换为python类型的数据
pyth_list = json.load(fp)
print(pyth_list)
print(type(pyth_list))
print(type(pyth_list[0]))
需要有一个文件操作对象运行结果

以上就是loads和load的用法,两种方法可以在适当的场景下使用。
json.dumps()函数,把python类型的数据转换成json字符串
json.dump()函数, 把python类型的数据以json格式储存到文件中


dumps函数
import json
data = '''
[{
"name": "小明",
"height": "170",
"age": "18"
}, {
"name": "小红",
"height": "165",
"age": "20"
}]
'''
# 打印要来data类型
print(type(data))
# json类型的数据转化为python类型的数据
new_data = json.loads(data)
# 把python类型的数据转换成json字符串
lit = json.dumps(new_data)
# 打印转换后data类型
print(type(new_data))
print(type(lit))
运行结果

其实loads和dumps的用法都是一致的,loads是将json类型的数据转化为python类型的数据,而dumps是将json类型的数据转化为python类型的数据。相当于一个是编码一个是解码。
dump函数
把python类型的数据以json格式储存到文件中
import json
import json
data = '''
[{
"name": "小明",
"height": "170",
"age": "18"
}, {
"name": "小红",
"height": "165",
"age": "20"
}]
'''
# json类型的数据转化为python类型的数据
new_data = json.loads(data)
# 把python类型的数据以json格式储存到文件中
# 构建要写入文件对象
with open('test1.json','w',encoding='utf-8')as fp:
# 把python类型的数据以json格式储存到文件中
json.dump(new_data,fp,ensure_ascii=False)
为了输出中文,还需要指定参数 ensure_ascii 为 False

储存文件

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
创建字典有非常多种方式,但是我认为只要先掌握以下3种,就可以应对大部分的应用场景了; 1.直接赋值法;2.关键字赋值法;3. 列表转化法;4 .元素增加法;5. 元组转化法;6. 创建key值法
这篇文章给大家分享的是有关装饰器的内容,介绍了典型的函数装饰器和标准库中的装饰器,小编觉得挺实用的,因此分享给大家做个参考,接下来一起跟随小编看看吧。
python中的多线程锁lock=threading.Lock()使用方式,下文有实例供大家参考,对大家了解操作过程或相关知识有一定的帮助,而且实用性强,希望这篇文章能帮助大家,下面我们一起来了解看看吧。
类(class),作为代码的父亲,可以说它包裹了很多有趣的函数和方法以及变量,下面我们试着简单创建一个吧。
这篇文章主要为大家介绍了Python的捕捉异常,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008