取消Python类

时间:2010-07-16 13:47:28

标签: python class pickle

我在尝试取消这个类的子类时遇到了问题。当我取消它时,那些东西不存在。是什么赋予了?     班级帐户:

    def __init__(self, server, port, smtp_server, smtp_port):
        self.server = server
        self.port = port
        self.smtp_server = smtp_server
        self.smtp_port = smtp_port

        self.save()

    def save(self):
        #save account for later loading
        self.name = tkFileDialog.asksaveasfilename(title = "Save as..")
        pickle.dump(self, open(self.name, "wr"))        

2 个答案:

答案 0 :(得分:1)

您的班级是否继承object

无论哪种方式,您都可以通过覆盖__getstate__来指定要腌制的内容。否则,如果您继承__dict__,则通常应复制object

答案 1 :(得分:0)

所以,这就是我刚刚想到的 - 我把丑陋的泡菜(见评论)移到了破坏性的类,导入了我正在腌制的类,看起来它很有用。