Python面向对象编程从零开始(2)—— 与对象相互了解

浏览: 4691

前言

咳咳,接着昨天的故事继续

昨天的传送门:https://ask.hellobi.com/blog/wangdawei/8429

昨天我们说了以下几点:

  1. 面向对象和面向过程的区别
  2. 对象和类
  3. 创建类
  4. 定义对象
  5. 类的三要素

今天继续来和对象(小姐姐)一起玩耍。

了解对象--小姐姐自我介绍

Clipboard Image.png

目前我们只知道小姐姐的姓名,芳龄,除了她喜欢开车,我不了解其他什么了。

所以我想让她做个自我介绍,然后可以深入了解。

让小姐姐(对象)自己介绍一下自己,她比较害羞,不想说一大串,她让我直接问她问题她回答。

所以我先要优化原来定义的类(接着上文结尾代码):

class Car:

def drive(self):
print('我正在开车')

def turnover(self):
print('翻车了')

def introduce(self):
print('%s的年龄是:%d'%(xiao_jie_jie.name,xiao_jie_jie.age))

#创建一个对象
xiao_jie_jie=Car()

xiao_jie_jie.drive()#调用xiao_jie_jie指向的对象的方法
xiao_jie_jie.turnover()


#添加属性,属性就是变量
xiao_jie_jie.name = '王梦瑶'
xiao_jie_jie.age = 20

xiao_jie_jie.introduce()

注意:只有最后一句是小姐姐自己的自我介绍(introduce),其他的都是我完成的啦。

是不是感觉,面向对象很有优势。

运行结果如下:

Clipboard Image.png


注意:这里把原来在类外写的print写在了类里,写在了introduce()方法里,然后调用introduce()方法实现自我介绍。


既然小姐姐都自我介绍了,为了表示相互尊重,我也要介绍一下自己。

我的自我介绍

myself = Car()

myself.name = '王大伟'
myself.age = 18

myself.features = '玉树临风 英俊潇洒 风流倜傥 貌似潘安 形貌昳丽 器宇轩昂 一表人才 雄姿英发 风度翩翩'
myself.introduce()

我把我自己也定义在Car这个类下,myself也是Car这个类下的一个对象。

然后同样介绍了我的姓名和年龄

因为我不像小姐姐一样害羞啊

所以我自我介绍就多说了几句‘大实话’,并擅自帮小姐姐补充了一下自我介绍。

class Car:

def drive(self):
print('我正在开车')

def turnover(self):
print('翻车了')

def introduce(self):
print('%s的年龄是:%d,特点是:%s'%(self.name,self.age,self.features))

#创建一个对象
xiao_jie_jie=Car()

xiao_jie_jie.drive()#调用xiao_jie_jie指向的对象的方法
xiao_jie_jie.turnover()


#添加属性,属性就是变量
xiao_jie_jie.name = '王梦瑶'
xiao_jie_jie.age = 20
xiao_jie_jie.features = '北方有佳人 遗世而独立 一顾倾人城 再顾倾人国'

xiao_jie_jie.introduce()

myself = Car()

myself.name = '王大伟'
myself.age = 18
myself.features = '玉树临风 英俊潇洒 风流倜傥 貌似潘安 形貌昳丽 器宇轩昂 一表人才 雄姿英发 风度翩翩'

myself.introduce()

运行结果如下:

Clipboard Image.png


注意:划重点,因为我和小姐姐都要使用类中的方法introduce(),为了我和小姐姐这两个对象都能调用这个类中的方法,需要把introduce()方法传入的参数改成如下:

Clipboard Image.png

用self代替原来的xiao_jie_jie,self可以通俗理解为,谁调用了方法传的就是谁的参数进去,这里两次调用(小姐姐和我相互自我介绍,相当于传了xiao_jie_jie和myself进去)

这样,我们的自我介绍就完成了。

今天时间不多,只能更新这么多了。

想了解我与小姐姐的更多故事,请持续关注。

Clipboard Image.png

推荐 7
本文由 ID王大伟 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

3 个评论

讲的不错小哥
不错,我想还看看matplotlib
加油

要回复文章请先登录注册