这篇文章给大家分享的是有关JSON在Python中的使用方法是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。
JSON介绍
JSON (JavaScript对象表示法)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript编程语言标准ecma - 262年第3版- 1999年12月的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, c++, c#、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。
JSON的两种结构
- <李>
"名称/值”对的集合(名称/值对的集合)。不同的语言中,它被理解为对象(对象)、纪录(记录),结构(结构),字典(字典),哈希表(哈希表),有键列表(键列表),或者关联数组(关联数组)。
李> <李>值的有序列表(值的有序列表)。在大部分语言中,它被理解为数组(数组).
李><强> JSON在Python中的使用强>
在Python中操作JSON时需要引入JSON标准库。
<代码>进口JSON代码>
<强>类型转换强>
Python类型转JSON:
<代码> json.dump() 代码>
# 1。Python的dict类型转JSON
person_dict={“名称”:“猪”,“年龄”:18岁的“性”:“人”、“家乡”:“江西抚州”}
缩进参数为缩进空格数
person_dict_json=JSON。转储(person_dict,缩进=4)打印(person_dict_json, ' \ n ')
2。Python的列表类型转JSON
person_list=[‘男人’‘猪’,18日,“江西抚州”)person_list_json=json.dumps (person_list)打印(person_list_json, ' \ n ')
3, Python的对象类型转JSON
person_obj=人(“猪”,18岁,‘人’,‘江西抚州”)
中间的匿名函数是获得对象所有属性的字典形式
person_obj_json=JSON。转储(person_obj默认=λobj: obj。<强> dict >强,缩进=4)打印(person_obj_json, ' \ n ')
JSON转Python类型:
<代码> json.loads() 代码>
4, JSON转Python的dict类型
person_json="{"名称":“猪”,“年龄”:18岁的“性”:“男人”、“家乡”:“江西抚州“}”
person_json_dict=json.loads (person_json)打印(类型(person_json_dict), ' \ n ')
5, JSON转Python的列表类型
person_json2='[“男人”“猪”,18日,“江西抚州”)的
person_json_list=json.loads (person_json2)打印(类型(person_json_list), ' \ n ')
6, Python的JSON转自定义对象类型
person_json="{"名称":“猪”,“年龄”:18岁的“性”:“男人”、“家乡”:“江西抚州“}”
object_hook参数是将dict对象转成自定义对象
person_json_obj=JSON。负载(person_json object_hook=λd:人(d(“名字”),d(“年龄”),d(“性”),d(“家乡”)))打印(类型(person_json_obj), ' \ n ')
<强> Python和JSON数据类型对应表强>
<强> JSON 强> <强> Python 强> objectdictarrayliststringstrnumberint,长,floattrue, falseTrue, FalsenullNone<强>需要注意的点强>
JSON的键名和字符串都必须使用双引号引起来,而Python中单引号也可以表示为字符串,所以这是个比较容易犯的错误!
Python类型与JSON相互转换的时候到底是用加载/转储还是用负载\转储吗?
不加s的方法入参多了一个fp表示filepath,最后多了一个写入文件的操作。
所以我们在记忆的时候可以这样记忆:
加s表示转成字符串(str),不加s表示转成文件。
感谢各位的阅读!关于JSON在Python中的使用方法是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!