首页 > 代码库 > Python之JSON序列
Python之JSON序列
Json
不同平台(一般是不同的语言)之间进行数据交换
vim day6-1.py
#!/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
#!/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()
运行报错,传递必须是字符串或者二进制字符不能是字典
修改代码
#!/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
import json f = file("data_to_qq.txt",‘rb‘) name = json.loads(f.read()) f.close() print name[‘alex‘]
需要使用json的loads方式在把字符串文件导成字典才能取到值
PS:该功能可以用在不同的程序之间的内存之间传递数据
JSON只能转换常用的数据格式比如字典,字符串,数组,元祖等 不同语言之间的函数定义是不同的,所以不能转换(比如日期格式)
Python之JSON序列
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。