Python之JSON序列

 

 

Json

不同平台(一般是不同的语言)之间进行数据交换

vim day6-1.py

1
2
3
4
5
6
7
8
9
10
11
12
#!/usr/bin/python
# -*- coding:utf-8 -*-
import json
 
name = {
    'alex':[22,'M'],
    'rain':[21,'F']
}
 
name_after_transfer = json.dumps(name)
print name
print name_after_transfer

好像没什么区别单引号变成双引号了,json其实是把字典转换成为了字符串

在看以下列子

vim day6-2.py

1
2
3
4
5
6
7
8
9
10
11
12
#!/usr/bin/python
# -*- coding:utf-8 -*-
 
 
name = {
    'alex':[22,'M'],
    'rain':[21,'F']
}
 
f = file("data_to_qq.txt","wb")
f.write(name)
f.close()

运行报错,传递必须是字符串或者二进制字符不能是字典

修改代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/usr/bin/python
# -*- coding:utf-8 -*-
import json
 
name = {
    'alex':[22,'M'],
    'rain':[21,'F']
}
 
name_after_transfer = json.dumps(name) #使用JSON方法把字典转化成字符串了
f = file("data_to_qq.txt","wb")
f.write(name_after_transfer)
f.close()
#print name
#print name_after_transfer

运行就会生成文件data_to_qq.txt了

 

模拟调用这个数据文件

vim qq_app.py

1
2
3
4
5
import json
f = file("data_to_qq.txt",'rb')
name = json.loads(f.read())
f.close()
print name['alex']

需要使用json的loads方式在把字符串文件导成字典才能取到值

PS:该功能可以用在不同的程序之间的内存之间传递数据

  JSON只能转换常用的数据格式比如字典,字符串,数组,元祖等 不同语言之间的函数定义是不同的,所以不能转换(比如日期格式)

 

json的dump方法有两种 

1,dumps

dump是读入到内存 dump可以直接写入文件

2,dump

 

load演示

 

posted @   minseo  阅读(292)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示