为了账号安全,请及时绑定邮箱和手机立即绑定

看不懂,参考答案为什么要这样编辑?有没有大神指导一下?

class Animal(object):

    def __init__(self, name, age, localtion):

        self.__name = name

        self.__age = age

        self.__localtion = localtion


    def set_name(self, name):

        self.__name = name


    def get_name(self):

        return self.__name


    def set_age(self, age):

        self.__age = age


    def get_age(self):

        return self.__age


    def set_localtion(self, localtion):

        self.__localtion =localtion


    def get_localtion(self):

        return self.__localtion


正在回答

2 回答

可以这样写

class Animal():

    def __init__(self,name,age,location):

        self.__name=name

        self.__age=age

        self.__location=location

    

    def get_hs(self):

        return 'name={},age={},location={}'.format(self.__name,self.__age,self.__location)

dog=Animal('wangcai',2,'HuNan')

cat=Animal('MiMi',1,'BeiJing')

print(dog.get_hs())

print(cat.get_hs())


0 回复 有任何疑惑可以回复我~

该Animal类中有3个实例属性,分别是name,age和location,并且这3个属性都是带双下划线(__)前缀的,说明是私有属性。私有属性在类的外部不能被直接访问,但可以在类的内部直接访问,所以定义了六个方法分别获取(get)和设置(set)这三个私有属性的值,在类的外部可以通过这六个方法分别获取或设置实例中这3个属性的值。__init__实例方法是构造函数,在创建实例的时候可以方便同时设置实例的属性的初始值。

5 回复 有任何疑惑可以回复我~
#1

慕设计4377555 提问者

谢谢!
2021-10-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

看不懂,参考答案为什么要这样编辑?有没有大神指导一下?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信