JSON在Python中的使用介绍-Python教程

资源魔 43 0

相干学习保举:python视频

JSON引见

JSON(JavaScript Object Notation) 是一种轻量级的数据替换格局。 易于人浏览以及编写。同时也易于机械解析以及天生。 它基于JavaScript Progra妹妹ing Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采纳齐全自力于言语的文本格局,然而也应用了相似于C言语家族的习气(包罗C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特点使JSON成为理想的数据替换言语。

JSON的两种构造

  1. “称号/值”对的荟萃(A collection of name/value pairs)。没有同的言语中,它被了解为工具(object),纪录(record),构造(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或许联系关系数组 (associative array)。

  2. 值的有序列表(An ordered list of values)。正在年夜局部言语中,它被了解为数组(array)。

JSON正在Python中的应用

正在Python中操作JSON时需求引入json规范库。

import json

类型转换

Python类型转JSON:

json.dump()

#1.Python的dict类型转JSON
person_dict = {‘name’: ‘pig’, ‘age’: 18, ‘sex’: ‘man’, ‘hometown’: ‘江西抚州’}

indent参数为缩进空格数

person_dict_json = json.dumps(person_dict, indent=4)print(person_dict_json, ‘\n’)

2.Python的列表类型转JSON

person_list = [‘pig’, 18, ‘man’, ‘江西抚州’]person_list_json = json.dumps(person_list)print(person_list_json, ‘\n’)

三、Python的工具类型转JSON

person_obj = Person(‘pig’, 18, ‘man’, ‘江西抚州’)

两头的匿名函数是取得工具一切属性的字典方式

person_obj_json = json.dumps(person_obj, default=lambda obj: obj.dict, indent=4)print(person_obj_json, ‘\n’)

JSON转Python类型:

json.loads()

四、JSON转Python的dict类型

person_json = ‘{ “name”: “pig”,”age”: 18, “sex”: “man”, “hometown”: “江西抚州”}’
person_json_dict = json.loads(person_json)print(type(person_json_dict), ‘\n’)

五、JSON转Python的列表类型

person_json2 = ‘[“pig”, 18, “man”, “江西抚州”]’
person_json_list = json.loads(person_json2)print(type(person_json_list), ‘\n’)

六、JSON转Python的自界说工具类型

person_json = ‘{ “name”: “pig”,”age”: 18, “sex”: “man”, “hometown”: “江西抚州”}’

object_hook参数是将dict工具转成自界说工具

person_json_obj = json.loads(person_json, object_hook=lambda d: Person(d[‘name’], d[‘age’], d[‘sex’], d[‘hometown’]))print(type(person_json_obj), ‘\n’)

Python以及JSON数据类型对应表


JSONPython
objectdict
arraylist
stringstr
numberint,long,float
true,falseTrue,False
nullNone

需求留意的点

JSON的键名以及字符串都必需应用双引号惹起来,而Python中单引号也能够示意为字符串,以是这是个比拟容易犯的谬误!

Python类型与JSON互相转换的时分究竟是用load/dump仍是用loads\dumps?

没有加s的办法入参多了一个fp示意filepath,最初多了一个写入文件的操作。

以是咱们正在影象的时分能够这样影象:

加s示意转成字符串(str),没有加s示意转成文件。

相干保举:编程视频课程

以上就是JSON正在Python中的应用引见的具体内容,更多请存眷资源魔其它相干文章!

标签: json Python python教程 python编程 python使用问题

抱歉,评论功能暂时关闭!