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/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保 ...
随机推荐
- backface-visibility:hidden
backface-visibility:hidden 不面向屏幕时隐藏
- JUC 一 CountDownLatch(闭锁)
java.util.concurrent 介绍 CountDownLatch是一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待 CountDownLatch cou ...
- NX二次开发-UFUN设置环境变量UF_set_variable
NX9+VS2012 #include <uf.h> #include <stdio.h> UF_initialize(); //UFUN方式 //设置环境变量 int a = ...
- NX二次开发-获得图纸抑制尺寸的表达式UF_DRF_ask_controlling_exp
#include <uf.h> #include <uf_modl.h> #include <uf_drf.h> #include <uf_obj.h> ...
- Annotation详解
转自:http://www.doc88.com/p-995532241886.html 首先我们定义一个简单的注解 package com.qjy.annotation; import java.la ...
- spring注解方式配置以及spring4的泛型注入 (4)
目录 一.@Controller 注解控制层(action) 二.@Service 注解服务层 三.@Repository 持久层 四.spring4的泛型注入测试 1 创建两个实体User和Role ...
- 剑指offer——30栈的压入、弹出序列
题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压 ...
- Eclipse+Maven创建webapp项目 及部署在tomcat上
1.开启eclipse,右键new——>other,如下图找到maven project 2.选择maven project,显示创建maven项目的窗口,勾选如图所示,Create a sim ...
- 01、requests 基本使用
requests模块的基本使用 基于网络请求的模块. 环境的安装:pip install requests 作用:模拟浏览器发起请求 分析requests的编码流程: 1.指定url 2.发起了请求 ...
- 2018今日头条湖北省赛【H】
[题目链接]https://www.nowcoder.com/acm/contest/104/G 现场赛的H题,emmm...C++选手表示很伤心.高精度压四位板子WA四发. 题意很简单就是给你n个数 ...