3、轻松学会python面向对象第3篇---翻译翻译,什么叫对象

黄四郎承诺三天后要给县长大人一个惊喜,马县长并不买账,逼师爷翻译,什么叫惊喜,我就叫你翻译翻译,什么TM的,叫TM的惊喜。

现在,你学了面向对象了,请翻译翻译,什么叫对象。有人告诉你,在python中,一切皆对象,可你还是不理解,心中一遍遍嘶吼着,翻译翻译,什么叫对象,什么TM的,叫TM的对象。

别急,听我慢慢道来。

1. 对象

老规矩,先来看代码

class Dog():
    def __init__(self, _name, _age):
        self.name = _name
        self.age = _age

    def eat_moon(self):
        print("天狗吃月")


dog = Dog('二哈', 3)
print(dog.name)     # 二哈
print(dog.age)      # 3

在上面这段代码里,dog就是对象,也称实例,他俩是一个概念。对象与类是共生的,对象必然由某个类来创建,离开了对象,类的存在也变得没有意义。你需要记住的是,如何用一个类来创建出对象,不过就是一个固定的代码形式。

2. 初始化方法

__init__方法是我在定义类的时候写在类里的,这类带着双下划线的拥有特定功能的方法被称之为魔法方法,__init__负责为对象进行初始化。

买过手机吧,刚入手的手机,开机第一时间干什么,是不是进行各种设置,设置语言,设置亮度,设置时间。对象被创建出来以后,也需要进行设置,具体咋设置,看__init__方法,该方法有两个参数,因此,我写了Dog('二哈', 3), 传了两个数据,如此一来,对象dog的name就是“二哈”, 年龄就是3。

3. 翻译翻译,什么叫对象

简单直白的进行翻译,对象由类创建,创建的方法就是类的名称后面紧跟一对小括号,如果类定义了__init__,那么就根据init方法里的参数进行传参,这便是对象。

还有更深刻的理解么?当然有,不过此刻,你能理解到这里就足够了,循序渐进,不必急于一时。

扫描关注, 与我技术互动

QQ交流群: 211426309

加入知识星球, 每天收获更多精彩内容

分享日常研究的python技术和遇到的问题及解决方案