python学习笔记--json&&pickle
2017-11-12 18:49
579 查看
json支持简单数据格式的转换,适用与多种语言之间的转换,此后必将替换xml。
pickle是python的序列转换,存贮是以二进制进行存储的,可以转换复杂的类型,如函数,当然,你在反序列化话的模块中也需要写入带有相应函数名的函数。
import json msg = {"lilei":"boy","wangfang":"girl"} fw = open("test.txt",'w') fw.write(json.dumps(msg)) # json.dump(msg,fw) #存入文本的格式就是{"lilei": "boy", "wangfang": "girl"} #如果直接写fw.write(str(msg)),那么格式就是{'lilei': 'boy', 'wangfang': 'girl'},所以这样就不能loads出来,其实差别就是这个单双引号,只要把单引号变成双引号就可以,这样就能loads出来了 fw.close()
import json fr = open("test.txt",'r') data = json.loads(fr.read()) #json.load(f) print(data["lilei"]) --------------- boy
pickle是python的序列转换,存贮是以二进制进行存储的,可以转换复杂的类型,如函数,当然,你在反序列化话的模块中也需要写入带有相应函数名的函数。
import pickle def fun(age): print("I am %s years old" % age) msg = {"lilei":"boy","wangfang":"girl",'test':fun} fw = open("test.txt",'wb') pickle.dump(msg,fw) # fw.write(pickle.dumps(msg)) fw.close()
这里写代码片import pickle def fun(age): print("I am %s years old" % age) print("I am %s years old" % age) fr = open("test.txt",'rb') data = pickle.loads(fr.read()) data['test'](12) fr.close() ----------------------- I am 12 years old I am 12 years old
相关文章推荐
- python学习笔记(二)marshal pickle cpickle json jsonpickle
- python学习之路(json & pickle 模块 ---序列化,反序列化)
- python学习-json&pickle
- Python & 数据分析学习笔记[第2篇]
- Python & 数据分析学习笔记[第1篇]
- <<Python基础教程>>学习笔记 | 第14章 | 网络编程
- 「学习笔记——Python」Google's Python Class 学习笔记
- python 核心编程学习笔记(第4章) 对应Let's-python视频第5集
- Python学习笔记(六):多线程、XML、JSON(快速入门篇)
- python基础学习笔记<面向对象编程>
- Python学习笔记12:标准库之对象序列化(pickle包,cPickle包)
- python基础学习笔记<进阶>
- Python学习笔记三(Try-cacth&with方法)
- [Python & Machine Learning] 学习笔记之scikit-learn机器学习库
- python学习笔记28(python中pickle的使用)
- Python学习笔记七(File&Open)
- Python3.3 学习笔记4 - 函数 - input & print
- python学习笔记十六:读取JSON文件
- python学习笔记(re module && os)
- Python2学习笔记之gui和安装demjson库