python中的数据永久储存到文件中:pickle

原因:对于一些大的字典,经常调用的内容,我们需要将文件永久储存到计算机的磁盘中去,这个时候python提供了一个pickle模块,参考网址:https://blog.csdn.net/hanchaobiao/article/details/72852803

一、模块的导入

import pickle

二、所需接口及介绍

       pickle.dump(obj, file, [,protocol])
  注解:将对象obj保存到文件file中去。

                  file:对象保存到的类文件对象。file必须有write()接口, file可以是一个以'w'方式打开的文件或者一个StringIO对象或者其他任何实现write()接口的对象。如果protocol>=1,文件对象需要是二进制模式打开的。

     protocol为序列化使用的协议版本,0:ASCII协议,所序列化的对象使用可打印的ASCII码表示;1:老式的二进制协议;2:2.3版本引入的新二进制协议,较以前的更高效。其中协议0和1兼容老版本的python。protocol默认值为0。

  pickle.load(file)
  注解:从file(文件对象)中读取一个字符串,并将它重构为原来的python对象。

三、例子

#! /usr/bin/env python
# -*- coding:utf-8 -*-
#  Author:Aowei Hao

import  pickle

my_list = [123,3.14,'郝奥伟',['another list']]   #这是一个待保存的数据,实际的数据可能更大
pickle_file = open('test.pkl','wb')   #以二进制形势打开一个文件
pickle.dump(my_list,pickle_file)      #将数据导入dump文件
pickle_file.close()                #关闭文件

#打开文件
pickle_open = open('test.pkl','rb')
my_new_list = pickle.load(pickle_open)   #重新导入数据
print(my_new_list)       #打印磁盘中的内容
pickle_open.close()

猜你喜欢

转载自blog.csdn.net/haoaoweitt/article/details/81185904