Python - AttributeError:类型对象'MyClass'没有属性'name'

时间:2015-04-08 11:36:05

标签: python

我有3个python文件。

MyModule.py

class MyClass:
    def __init__(self, name):
        self.name = name

    @classmethod
    def hello(self):
        print('Hello ' + self.name)

Loader.py

import pickle
from MyModule import *

me = pickle.load(file('my_pkl.pickle','rb'))
me.hello()

Dumper.py

import pickle
from MyModule import *

me = MyClass('Anil')
pickle.dump(me, open('my_pkl.pickle','wb'))

当我对Loader.py表示欢迎时,我得到以下错误:

AttributeError: type object 'MyClass' has no attribute 'name'

如何访问名称实例vaiable?

1 个答案:

答案 0 :(得分:2)

您正在使用实例方法作为类方法。使它成为一个实例方法。

# remove @classmethod decorator
# called on instance: me.hello()

def hello(self):
    print('Hello ' + self.name)