Python3读写JSON文件
JSON简介JSON(JavaScript Object Notation)即JavaScript对象表示法,一种轻量级,通用的文本数据格式。
示例格式,文件demo.json: { "name": "Cactus","age": 18,"skills": ["Python","Java","Go","NodeJS"],"has_blog": true,"gf": null } JSON与Python数据类型的对应关系JSON和Python中的字典等类型一一对应:
JSON字符串与Python字典的相互转换
使用Python自带的json包可以完成字典与JSON字符串的相互转换
示例1,字典转JSON字符串 import json dict_var = { 'name': 'Cactus','age': 18,'skills': ['Python','Java','Go','NodeJS'],'has_blog': True,'gf': None } print(json.dumps(dict_var)) print(json.dumps(dict_var,indent=2,sort_keys=True,ensure_ascii=False)) json.dumps()支持参数,indent为多行缩进空格数,sort_keys为是否按键排序,ensure_ascii=False为不确保ascii,及不将中文等特殊字符转为uXXX等 {"name": "Cactus","gf": null} { "age": 18,"gf": null,"name": "Cactus","skills": [ "Python","NodeJS" ] } 示例2,JSON字符串->字典 import json json_str = '''{ "name": "Cactus","gf": null }''' print(json.loads(json_str)) 显示结果: {'name': 'Cactus','gf': None} JSON文件与字典的相互转换另外也可以直接将字典保存为JSON文件或从JSON文件转为字典
示例3:字典->JSON文件 import json dict_var = { 'name': 'Cactus','gf': None } with open("demo2.json","w",encoding='utf-8') as f: # json.dump(dict_var,f) # 写为一行 json.dump(dict_var,f,ensure_ascii=False) # 写为多行 文件demo2.json结果: { "age": 18,"NodeJS" ] } 示例4: JSON文件->字典 import json with open("demo2.json",encoding="utf-8") as f: data = json.load(f) pritn(data) 显示结果: {'age': 18,'gf': None,'name': 'Cactus','NodeJS']}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |