当前位置: 首页 > 编程笔记 >

在Python中利用pickle保存变量的实例

邵伟
2023-03-14
本文向大家介绍在Python中利用pickle保存变量的实例,包括了在Python中利用pickle保存变量的实例的使用技巧和注意事项,需要的朋友参考一下

在工作中出于某些原因,我们可能需要将变量保存下来,这样下次就可以直接去赋值而不用重新执行某些重复耗时的操作了,这里我们用到了Python的pickle包来做变量的存储和变量加载,大家注意这个包是python自带的,不需要另外再去安装。

pickle用法如下:

pickle.dump(obj, file, protocol=None,*,fix_imports=True)

pickle.load(file, *,fix_imports=True, encoding=”ASCII”. errors=”strict”)

需要注意这里的file必须要是以二进制的形式进行操作(写入或读取)

import pickle
c=[1,2,3,4,5,6,7]
a=c*4
f=open('D:\\pycm\\kaggle\\data\\test.txt','wb')
pickle.dump(a,f)
f.close()
print(a)

结果输出如下:

加载存储的变量方法如下:

import pickle
f=open('D:\\pycm\\kaggle\\data\\test.txt','rb')
d=pickle.load(f)
f.close()
print(d)

结果输出如下:

这样就完成变量的保存和加载操作啦,完整写法如下:

import pickle
def save_variable(v,filename):
 f=open(filename,'wb')
 pickle.dump(v,f)
 f.close()
 return filename
 
def load_variavle(filename):
 f=open(filename,'rb')
 r=pickle.load(f)
 f.close()
 return r
 
if __name__=='__main__':
 c = [1, 2, 3, 4, 5, 6, 7]
 filename=save_variable(c,'D:\\test.txt')
 d=load_variavle(filename)
 print(d==c)

结果输出如下:

以上这篇在Python中利用pickle保存变量的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 问题内容: 我已经仔细阅读了Python文档提供的信息,但仍然有些困惑。有人可以张贴示例代码来编写新文件,然后使用pickle将字典转储到其中吗? 问题答案: 尝试这个:

  • 问题内容: 我有Python类,在运行时我只需要一个实例,因此每个类只具有一个属性就足够了,而每个实例只具有一次属性就足够了。如果将有多个实例(不会发生),则所有实例应具有相同的配置。我想知道以下哪种选择更好或更“惯用”的Python。 类变量: 实例变量: 问题答案: 我有Python类,在运行时我只需要一个实例,因此每个类只具有一个属性就足够了,而每个实例只具有一次属性就足够了。如果将有多个实

  • 问题内容: 我有一堂课,为游戏中的玩家提供服务,创建他们以及其他东西。 我需要将这些播放器对象保存在文件中,以便以后使用。我已经尝试过pickle模块,但是我不知道如何保存多个对象并再次加载它们?有没有办法做到这一点,还是应该使用其他类(例如列表)并将对象保存并加载到列表中? 有没有更好的办法? 问题答案: 到目前为止,使用列表,元组或字典是最常见的方法: 输出: 但是,泡菜文件可以包含任意数量的

  • 问题内容: 我看过Pickle文档,但我不知道泡菜在哪里有用。 Pickle有哪些常见用例? 问题答案: 我遇到的一些用途: 1)将程序的状态数据保存到磁盘,以便它可以在重新启动时从中断处继续执行(持久性) 2)在多核或分布式系统中通过TCP连接发送python数据(编组) 3)将python对象存储在数据库中 4)将任意python对象转换为字符串,以便可以将其用作字典键(例如,用于缓存和备忘录

  • 本文向大家介绍python利用opencv保存、播放视频,包括了python利用opencv保存、播放视频的使用技巧和注意事项,需要的朋友参考一下 代码已上传至:https://gitee.com/tqbx/python-opencv/tree/master/Getting_started_videos 目标 学习读取视频,播放视频,保存视频。 学习从相机中捕捉帧并展示。 学习cv2.VideoC

  • 问题内容: 我想将错误的名称和追溯详细信息保存到变量中。这是我的尝试。 输出: 所需输出: PS:我知道可以使用追溯模块轻松完成此操作,但是我想在此了解sys.exc_info()[2]对象的用法。 问题答案: 这是我的方法: 但是,您应该看看traceback文档,因为您可能会发现更合适的方法,这取决于您以后要如何处理变量…