执行以下代码,找到异常的位置和原因,并进行修正,只有一处错误。
class Dog(object):
def __init__(self,name):
self.__name = name
@property
def name(self):
return self.__name
def get_name(dog):
return dog.name()
get_name(Dog("MaoQiu"))
首先运行一下,发现错误的原因是str类型不可调用
但是看了代码之后,发现代码使用了装饰器将函数进行封装,所以可以直接调用属性,不需要调用name函数,因此,将get_name函数中返回改成dog.name就行,直接返回属性
class Dog(object):
def __init__(self,name):
self.__name = name
@property
def name(self):
return self.__name
def get_name(dog):
return dog.name
get_name(Dog("MaoQiu"))