猿问

Python可以同时使用__slots__与property么?

class Animal(object):
    __slots__ = ('name','age')
    def __init__(self,name,age):
        self.__name = name
        self.__age = age

    @property
    def name(self):
        return self.__name

    @name.setter
    def name(self,value):
        self.__name = value

d = Animal('Tom',12)
d.name = 'Alice'
print(d.name)

Error>>
AttributeError: 'Animal' object has no attribute '_Animal__name'

如果我这样写的话会报错,那么如何正确实现slots 与 property?

qq_苦瓜_3
浏览 1486回答 3
3回答
随时随地看视频慕课网APP

相关分类

Python
我要回答