博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
pickle,shelve模块
阅读量:7056 次
发布时间:2019-06-28

本文共 884 字,大约阅读时间需要 2 分钟。

import pickle

def sh(name):

print("hello,",name)
#序列化存储
info={'key':'mode',
'lis':'koud',
'olo':234,
'func':sh
}

pickle可复杂序列化

f=open("text.txt","wb")

print(pickle.dumps(info)) #pickle序列化以二进制存储
f.write(pickle.dumps(info))
pickle.dump(info,f) #优化后的写法效果完全相同

f.close()

pickle反序列化

import pickle #只有在python语言里用

def sh(name): #序列化整个函数

print("hello3,",name)
print("hello4,",name)

f=open("text.txt","rb")  #pickle反序列化读取的是二进制数据

data=pickle.loads(f.read())

data=pickle.load(f) #优化写法效果完全相同
print(data)

shelve序列化

import shelve,datetime

shelve模块是一个简单的k,v将内存数据通过文件持久化的模块

可以持久化任何pickle可支持的python数据格式

#a=shelve.open("new_year")

name=["alex","jack","tomo"]

info={"age":22,"job":"it","name":"alex"}
date=datetime.datetime.now()

a["name"]=name

a["indo"]=info
a["date"]=date

a.close()

读取文件内容

import shelve,datetime

a=shelve.open("new_year")
print(a.get("indo"))

转载于:https://blog.51cto.com/12992048/2176886

你可能感兴趣的文章
Redis的过滤器(SCAN)功能
查看>>
C#DataGridView添加序号
查看>>
java 线程池的创建方式
查看>>
秒懂机器学习---总纲:机器学习有哪些算法
查看>>
composer是什么
查看>>
Java动态编译
查看>>
javascript立即调用的函数表达式N种写法(第二篇)
查看>>
brew学习——hello world
查看>>
div css 伪类 不固定图片大小 居中, css div 实现三角形
查看>>
java加密算法-AES
查看>>
sql server 2008 数据库的完整性约束
查看>>
从matlab中导出下载到的轨迹数据
查看>>
git命令提交后push失败,缺少changeID的解决办法
查看>>
python的变量
查看>>
Behave + Selenium(Python) ------ (第一篇)
查看>>
Excel For Java
查看>>
SSH登陆错误"WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! "
查看>>
一步步从数据库备份恢复SharePoint Portal Server 2003
查看>>
开发工具-设置Sublime支持韩文展示
查看>>
锋利的jQuery小记……
查看>>