如何在python中选择是pickle类实例还是只保存一个包含参数列表的文件

如何在python中选择是pickle类实例还是只保存一个包含参数列表的文件,python,pickle,Python,Pickle,我正在做一个python模块来对压力容器进行工程计算(不是家庭作业)。以前我在excel中做过这项工作,但我正在尝试将其移植到Python中,因为a)我认为它会工作得更好b)我想尝试一下。我怀疑它非常适合从excel中移出,因为许多计算都是相同的,并且在不同的项目或容器、几何体、应力载荷等的不同组合上重复进行。我现在意识到excel的好处是,您保存了您的工作表,当您重新打开文件时,您没有丢失任何数据 因此,我已经为压力容器设置了一个类,一个(或多个)用于连接到它的支管,一个(或多个)用于适用于容

我正在做一个python模块来对压力容器进行工程计算(不是家庭作业)。以前我在excel中做过这项工作,但我正在尝试将其移植到Python中,因为a)我认为它会工作得更好b)我想尝试一下。我怀疑它非常适合从excel中移出,因为许多计算都是相同的,并且在不同的项目或容器、几何体、应力载荷等的不同组合上重复进行。我现在意识到excel的好处是,您保存了您的工作表,当您重新打开文件时,您没有丢失任何数据

因此,我已经为压力容器设置了一个类,一个(或多个)用于连接到它的支管,一个(或多个)用于适用于容器的荷载循环,一个用于荷载循环期间适用于该容器的材料特性,最后一个用于适用于支管、容器组合的合成应力,加载周期、材料特性。通常情况下,我的实例在创建后不会被修改(尽管我可能希望稍后修改),它们需要定义3到8个参数

如果我离开后又回来,我必须输入大量信息,以便能够保存(并加载)我的工作。在我看来,我可以:

  • 找出将实例创建参数列表保存到文件的方法。我肯定没那么难
  • 了解如何对类进行pickle(如果在本例中可能的话)
  • 我不是程序员,所以我可能会错过一些关于酸洗的关键。你们这些有学问的家伙(和女孩)都很聪明,所以我只是想寻求指导。酸洗是一种不必要的复杂性吗?或者,在不限制我未来选择的情况下,这是一种非常有益的方式?我突然想到,想出一种方法来写和读一个以args作为列表的文件,这可能就等同于准备要pickle的类,但我真的不知道这有多难

    提前谢谢你的帮助


    其次,我想说的是,这个论坛很棒,尽管我从未问过,但我从其他人的问题和你的所有答案中受益匪浅。

    我敢打赌,酸洗会奏效。。。这很容易,而且可以完成任务…酸洗很简单,如果你的班级没有任何异常行为,那么你可能不需要做任何事情来正确地酸洗它们。否则,适当地定义
    \uuuuu getstate\uuuuu
    \uuuu setstate\uuuuuu
    方法应该可以完成这项工作。请参阅Python pickle模块在线文档中的第11.1.5节。