展开
jasonharper's comment
你的
get_variable
和
get_num
方法没有引用类的成员变量。他们应该将对象作为第一个参数,例如
class MyClass:
...
def get_variable(self):
return self.variable
我认为您的序列化代码是可以的,但我可能错了。
(在一边)
这有点离题,但需要注意的是:当您直接在
class
块,它们是在类上定义的,而不是在该类的对象上定义的。在这种情况下,这是可以解决的,因为如果Python在对象上找不到同名的类级变量,那么它将查找相同名称的类级变量。但是,如果您在其中一个列表中存储一个列表并开始修改它,您最终会在对象之间共享它,这可能不是您想要的。相反,您希望在
__init__
方法:
class MyClass:
def __init__(self):
self.variable = "blah"