Python学习笔记(十)—JSON格式的处理
一、简介
JSON(JavaScript Object Notation) 是一种轻量级的通用的数据交换格式,所有的脚本语言都认识该格式,易于人阅读和编写。
JSON不能直接通过字典的方式取值,实际上它是字符串格式,需要转成字典格式才行;json串的定义必须使用双引号而不能使用单引号。
二、JSON常用的方法:
使用JSON前必须先导入JSON库:import json
loads方法和dumps方法用来处理字符串,如果你要处理的是文件而不是字符串,你可以使用 json.dump() 和 json.load() 来编码和解码JSON数据。
loads()方法:将json串转换成字典格式;用来处理字符串
实例1:
1 1 s = '''{ 2 2 "test":1, 3 3 "test2":23, 4 4 "test3":{ 5 5 "test4":666 6 6 } 7 7 }''' 8 8 import json 9 9 res = json.loads(s) #json串(字符串),转成字典 10 10 print('原始数据:',s) 11 11 print('JSON对象:',res) 12 12 print(res.keys()) #打印字典所有的key 13 13 print(type(res)) #查看res的数据类型
load()方法:将json串转换成字典格式;用来处理文件
实例2:
1 1 #前提需要自己创建一个JSON文件 2 2 f = open('stus.json',encoding='utf-8') #打开json文件 3 3 user_dic = json.load(f) #操作文件对象,将其转换成字典格式 4 4 print(user_dic) 5 5 f.close()
dumps()方法:将字典转换成json串格式,用来处理字符串;后边可以跟参数:indent方法是用来进行缩进的可以以json格式进行显示;ensure_ascii=false中文可以正常显示
实例3:
1 1 stus = {'test':123456,'test2':780,'test3':0000,'小白':'我是谁'} 2 2 print(type(stus)) #查看初始数据类型 3 3 res2 = json.dumps(stus,indent=4,ensure_ascii=False) #将字典,转换成json串;indent方法是用来进行缩进的可以以json格式进行显示;ensure_ascii=false中文可以正常显示 4 4 print(res2) 5 5 print(type(res2))
dump()方法:将字典转换成json串格式;用来处理文件
1 f = open('stus1.json','w',encoding='utf-8') #以写入模式创建一个新的json文件 2 json.dump(stus,f,indent=4,ensure_ascii=False) #将stus文件的值写入stus1文件 3 f.close()
感谢您的阅读,若有不足之处,欢迎指教,共同学习、共同进步。 博主网址:http://www.cnblogs.com/beginner-boy/ 如您喜欢,麻烦推荐一下;如您有新想法,欢迎提出,邮箱:582238977@qq.com。 本博客为博主原创,欢迎转载,但必须注明博客来源。