PyThon使用json对象

一、PyThon使用json对象
1、json定义
Json:javascript原生的对象,所谓原生对象指不需要第三方组件解析的对象,由浏览器自动进行解析的对象。

2、json对象的定义
Jsonobj={“键名”:值1,…,”键名”:值n};

3、json组件的引入
Import json

4、将python字典转为json字符串
jsonstr=json.dumps(python的字典对象)

示例如下:
import json

#定义python字典对象
dct={‘id’:1,‘sname’:‘张飞’,‘age’:22,‘address’:‘北京’,‘clazz’:‘大数据1班’}

#查看dct的类型
print(type(dct))
print(dct)
#获取字典中的数据
print(dct[‘id’])
print(dct[‘sname’])
print(dct[‘age’])
print(dct[‘address’])
print(dct[‘clazz’])

#将字典对象转为json字符串
jsonstr=json.dumps(dct,ensure_ascii=False)
print(type(jsonstr))
print(jsonstr)

结果如下:
<class ‘dict’>
{‘id’: 1, ‘sname’: ‘张飞’, ‘age’: 22, ‘address’: ‘北京’, ‘clazz’: ‘大数据1班’}
1
张飞
22
北京
大数据1班
<class ‘str’>
{“id”: 1, “sname”: “张飞”, “age”: 22, “address”: “北京”, “clazz”: “大数据1班”}

注意:ensure_ascii=False表示中文不用转为utf-8的编码字符(\uxxxx)

5、json字符串转为python字典对象
dic=json.laods(json字符串)

示例如下:
import json
dct={‘id’:1,‘sname’:‘张飞’,‘age’:22,‘address’:‘北京’,‘clazz’:‘大数据1班’}
#将字典对象转为json字符串
jsonstr=json.dumps(dct,ensure_ascii=False)
print(type(jsonstr))

print(jsonstr)
#将json字符串转为python字典
dic=json.loads(jsonstr)
print(type(dic))
print(dic[‘id’],’ ',dic[‘sname’])#使用字典对象输出键对应的值

结果消息如下:

<class ‘str’>
{“id”: 1, “sname”: “张飞”, “age”: 22, “address”: “北京”, “clazz”: “大数据1班”}
<class ‘dict’>
1 张飞

3、将字典对象转为字符串并存储到文件中
with open(“文件名”,”w”,encoding=”utf-8”) as f:
Json.dump(字典对象,f,indent=2,ensure_ascii=False) #写文件为多行

示例如下:
import json
import os
dct={‘id’:1,‘sname’:‘张飞’,‘age’:22,‘address’:‘北京’,‘clazz’:‘大数据1班’}

#将字典对象转为json字符串写入到文件
with open(“ss.json”,“w”,encoding=“utf-8”) as f:
json.dump(dct,f,indent=2,ensure_ascii=False)

4、从文件读取json字符串并转为python字典的方法
with open(“json文件名”,encoding=”utf-8”) as f:
dics=json.load(f)

5、综合示例如下:
import json
import os
#将字典数组转为json字符串
def dicsToJsonString(dics):
jsonstr=json.dumps(dics,ensure_ascii=False)
return jsonstr

#将json字符串转为字典的方法
def jsonStringToDict(jsonstring):
dicts=json.loads(jsonstring)
return dicts

#将字典数组集合转为json字符串存储到文件中的方法
def dictsWriteFile(dicts):
with open(“stu.json”,“w”,encoding=“utf-8”) as f:
json.dump(dicts,f,ensure_ascii=False)
print(“写出成功!”)

#从文件读取json字符串并转为字典
def fromFile2Dicts():
with open(“stu.json”,encoding=“utf-8”) as f:
dics2=json.load(f)
return dics2

if name == ‘main’:
dics = [
{‘id’: 1, ‘sname’: ‘张飞1’, ‘age’: 21, ‘address’: ‘北京’, ‘clazz’: ‘大数据1班’},
{‘id’: 2, ‘sname’: ‘张飞2’, ‘age’: 22, ‘address’: ‘北京’, ‘clazz’: ‘大数据2班’},
{‘id’: 3, ‘sname’: ‘张飞3’, ‘age’: 23, ‘address’: ‘北京’, ‘clazz’: ‘大数据3班’}
]
#####################字典集合转字符串#################################################
strjson = dicsToJsonString(dics) #调用字典转字符串的方法
print(strjson)
print(“strjson的类型:”,type(strjson))
#########################################################################
##################调用json字符串转字典的方法############################
dicts=jsonStringToDict(strjson)
print(“dicts的类型:”, type(dicts))
#print(dicts)
print(“编号”,"\t",“姓名\t”,“性别\t”,“地址\t”,“班级”)
print("=====================================================")
for dic in dicts:
print(dic[‘id’],"\t",dic[‘sname’],"\t",dic[“age”],"\t",dic[“address”],"\t",dic[“clazz”])
##########################################################################################

#####将字典集合转为json字符串并存储到文件中的方法
dictsWriteFile(dicts)
#################################################

####调用文件中的json字符串转为dicts数组
dics3=fromFile2Dicts()
print("编号", "\t", "姓名\t", "性别\t", "地址\t", "班级")
print("=====================================================")
for dic in dics3:
    print(dic['id'], "\t", dic['sname'], "\t", dic["age"], "\t", dic["address"], "\t", dic["clazz"])
##########################################################################################
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值