day22_4-pickle模块
# 参考资料:
# python模块(转自Yuan先生) - 狂奔__蜗牛 - 博客园
# https://www.cnblogs.com/guojintao/articles/9070485.html # ------------------------------------------------------------
# ********************day22_4-pickle模块 *******************
# ********************day22_4-pickle模块 *******************
# =====>>>>>>内容概览
# =====>>>>>>内容概览
'''
# ------------------------------------------------------------
# # 1、关于pickle 的解释
# # # Pickle的问题和所有其他编程语言特有的序列化问题一样,就是它===>>>只能用于Python,
# # # 并且可能不同版本的Python彼此都不兼容,因此,只能用Pickle保存那些不重要的数据,
# # # 不能成功地反序列化也没关系。
# # # 数据进行编码之后,是bytes的格式(json是字符串格式)
# # # 编码后内容是一些我们无法识别的数据流
# ------------------------------------------------------------ # ------------------------------------------------------------
# # 2、pickle 在文件储存上的应用
# ------------------------------------------------------------ # ------------------------------------------------------------
# # 3、字典的用法补充(shelve开始前的知识补充)
# # # 可以刚开始的时候,可以先定义一个空字典,之后再通过赋值来添加
# ------------------------------------------------------------ # ------------------------------------------------------------
# # 4、shelve
# # # shelve模块比pickle模块简单,只有一个open函数,返回类似字典的对象,
# # # 可读可写;key必须为字符串,而值可以是python所支持的数据类型
# # # 编码数据之后,会默认生成三个文本生成,内容都是看不懂的,
# ------------------------------------------------------------
------------------------------------------------分割线-------------------------------------------------
------------------------------------------------分割线-------------------------------------------------
------------------------------------------------分割线-------------------------------------------------
'''
# ------------------------------------------------------------
# # 1、关于pickle 的解释
# # # Pickle的问题和所有其他编程语言特有的序列化问题一样,就是它===>>>只能用于Python,
# # # 并且可能不同版本的Python彼此都不兼容,因此,只能用Pickle保存那些不重要的数据,
# # # 不能成功地反序列化也没关系。
# # # 数据进行编码之后,是bytes的格式(json是字符串格式)
# # # 编码后内容是一些我们无法识别的数据流
# ------------------------------------------------------------
'''
#
# import pickle
# dic = {'name':'alvin','age':23,'sex':'male'}
#
# print(type(dic))
#
# j = pickle.dumps(dic)
# print(type(j))
#
# # D:\Anaconda3\python.exe "D:/C_cache/py/day22_os_json_re_etc_MoKuai/day22_4- pickle.py"
# # <class 'dict'>
# # <class 'bytes'>
# #
# # Process finished with exit code 0 '''
# ------------------------------------------------------------
# # 2、pickle 在文件储存上的应用
# ------------------------------------------------------------
'''
#
# import pickle
# dic = {'name':'alvin','age':23,'sex':'male'}
#
# print(type(dic))
# print("序列化".center(60,"-"))
# j = pickle.dumps(dic)
# print(type(j),"\n序列化完成")
#
# # 注意是w是写入str,wb是写入bytes,j是'bytes'
# f= open('序列对象_pickle','wb')
# f.write(j)
#
# # 如果不关闭,刚刚写入的数据还放在内存中,还没有写进去,导致下面读取到的数据是“空”
# # 关闭后,打开文件,里面的内容是一些我们无法识别的数据流
# # f.close()
# # 如果不用上面的关闭操作,可以将在内存中的文件流通到flush操作刷入内存中,下面就可以读取到数据了
# f.flush()
# print("返序列化".center(60,"-"))
# f= open('序列对象_pickle','rb')
# data = pickle.loads(f.read())
# print(data['age'],"\n返序列化完成")
#
# # D:\Anaconda3\python.exe "D:/C_cache/py/day22_os_json_re_etc_MoKuai/day22_4- pickle.py"
# # <class 'dict'>
# # ----------------------------序列化-----------------------------
# # <class 'bytes'>
# # 序列化完成
# # ----------------------------返序列化----------------------------
# # 23
# # 返序列化完成
# #
# # Process finished with exit code 0 #
# ******************** shelve模块 *******************
# ******************** shelve模块 *******************
# ******************** shelve模块 *******************
#
'''
# ------------------------------------------------------------
# # 3、字典的用法补充(shelve开始前的知识补充)
# # # 可以刚开始的时候,可以先定义一个空字典,之后再通过赋值来添加
# ------------------------------------------------------------
''' # dic = {}
# print(dic)
# dic["name"] = "alex"
# print(dic)
# dic["infor"] = {"age":22,"sex":"male"}
# print(dic)
#
# # D:\Anaconda3\python.exe "D:/C_cache/py/day22_os_json_re_etc_MoKuai/day22_4- pickle.py"
# # {}
# # {'name': 'alex'}
# # {'name': 'alex', 'infor': {'age': 22, 'sex': 'male'}}
# #
# # Process finished with exit code 0 '''
# ------------------------------------------------------------
# # 4、shelve
# # # shelve模块比pickle模块简单,只有一个open函数,返回类似字典的对象,
# # # 可读可写;key必须为字符串,而值可以是python所支持的数据类型
# # # 编码数据之后,会默认生成三个文本生成,内容都是看不懂的,
# ------------------------------------------------------------
'''
#
# import shelve
# f = shelve.open(r"shelve.txt")
#
# f['stu1_info' ] = {'name':'alvin','age':22,'sex':'male'}
# f['stu2_info' ] = {'name':'ShaShu','age':33,'sex':'female'}
# f['school_info'] = {'website':'oldboyedu.com','city':'BeiJing'}
# # 如果不关闭,刚刚写入的数据还放在内存中,还没有写进去,导致下面读取到的数据是“空”
# # 关闭后,打开文件,里面的内容是一些我们无法识别的数据流,这个是由于编码的关系
# # f.close()
# # 没有该使用方式
# # f.flush()
# f = shelve.open(r"shelve.txt")
# print(f.get('stu1_info')['age'])
# f.close()
#
# # D:\Anaconda3\python.exe "D:/C_cache/py/day22_os_json_re_etc_MoKuai/day22_4- pickle.py"
# # 22
# #
# # Process finished with exit code 0
day22_4-pickle模块的更多相关文章
- python模块(json和pickle模块)
json和pickle模块,两个都是用于序列化的模块 • json模块,用于字符串与python数据类型之间的转换 • pickle模块,用于python特有类型与python数据类型之间的转换 两个 ...
- 【python】pickle模块
持久性的基本思想很简单.假定有一个 Python 程序,它可能是一个管理日常待办事项的程序,您希望在多次执行这个程序之间可以保存应用程序对象(待办事项).换句话说,您希望将对象存储在磁盘上,便于以后检 ...
- python数据持久存储:pickle模块的基本使用
经常遇到在Python程序运行中得到了一些字符串.列表.字典等数据,想要长久的保存下来,方便以后使用,而不是简单的放入内存中关机断电就丢失数据. 这个时候Pickle模块就派上用场了,它可以将对象转换 ...
- python数据持久存储:pickle模块的使用
python的pickle模块实现了基本的数据序列和反序列化.通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储:通过pickle模块的反序列化操作,我们能够从文件 ...
- Python(正则 Time datatime os sys random json pickle模块)
正则表达式: import re #导入模块名 p = re.compile(-]代表匹配0至9的任意一个数字, 所以这里的意思是对传进来的字符串进行匹配,如果这个字符串的开头第一个字符是数字,就代表 ...
- python--json & pickle 模块
用于序列化的两个模块 json,用于字符串 和 python数据类型间进行转换 pickle,用于python特有的类型 和 python的数据类型间进行转换 Json模块提供了四个功能:dumps. ...
- python(6)- json和pickle模块
这是用于序列化的两个模块: json: 用于字符串和python数据类型间进行转换 pickle: 用于python特有的类型和python的数据类型间进行转换 Json模块提供了四个功能:dumps ...
- pickle模块的基本使用
pickle是python的biult-in模块: python的pickle模块实现了基本的数据序列和反序列化.通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储 ...
- python学习_应用pickle模块封装和拆封数据对象
学习文件数据处理的时候了解到有pickle模块,查找官方文档学习了一些需要用到的pickle内容. 封装是一个将Python数据对象转化为字节流的过程,拆封是封装的逆操作,将字节文件或字节对象中的字节 ...
- python 列表 字典 读写文件:pickle模块的基本使用
python数据持久存储:pickle模块的基本使用(转载) 作者: pzxbc 出处: http://pzxbc.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保 ...
随机推荐
- python 进程与线程 精要
程序与进程 程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运行,而这种执行的程序就称之为进程. 程序和进程的区别就在于:程序是指令的集合,它是进程运行的静态描述文本:进程是程序的一次 ...
- quartz的使用(一)
1.quartz是什么? Quartz 是一个完全由 Java 编写的开源作业调度框架,支持各种灵活的应用方式,并同时支持分布式和集群能力.2.quartz的基本要素 2.quartz的基本要素 Sc ...
- 区别 |mysql |Timestamp、time、datetime
Timestamp 时间格式为 类似 2012-11-11 12:23:00 ,默认值为当前时间 time 时间格式类似12:23:00 默认值为null datetime 时间格式类似2012-11 ...
- sublime上插件的安装与使用
1.插件安装的方式 插件安装方式一:直接安装 下载插件安装包后,把安装包解压到packages目录(菜单->首选项->浏览插件目录)中,完成安装 插件安装方法二:使用package con ...
- Oracle实现行转列+Mybatis
1.需求 报表需要动态展示某几个公司分别在几个月内销售额情况(前端表头月份是动态的,月时间段是前端参数来选择的,最大为12个月), 页面展示如下 Oracle数据库中数据如下: 可以看到一个公司的月份 ...
- NX二次开发-UFUN将实体放入STL文件中函数UF_STD_put_solid_in_stl_file
NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_modl.h> #include <u ...
- NX二次开发-NXOpen获取边的端点NXOpen::Edge::GetVertices
NX9+VS2012 #include <NXOpen/Features_BlockFeatureBuilder.hxx> #include <NXOpen/Features_Fea ...
- 7、postman的变量
环境变量 环境变量顾名思义,我们可以设置测试环境和生产环境的变量. 比如我们设置测试环境的某个变量值为A,但是生产环境的为B,这个时候就可以用到环境变量.当然我们也可以不用环境变量,直接手动改,不过试 ...
- Python3实战spark大数据分析及调度✍✍✍
Python3实战spark大数据分析及调度 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大 ...
- [AH2017/HNOI2017]单旋
题目 \(\rm splay\)水平太差,于是得手玩一下才能发现规律 首先插入一个数,其肯定会成为其前驱的右儿子或者是后继的左儿子,进一步手玩发现前驱的右儿子或者是后继的左儿子一定只有一个是空的,我们 ...