Python进阶
类和对象(一)
前言导语
在原来我发布过Python入门学习的学习笔记,但迟迟没有更新Python的进阶学习。今天有时间就更新一下。微信关注公众号:夜寒信息。致力于为每一位用户免费提供更优质技术帮助与资源供给,感谢支持!
01
对象
下面我来给大家介绍对象。对象是模拟现实世界,将数据和代码封装起来。例如一个人,从外貌看他长得高,长的帅,两条腿,一个头。另一方面看他能做什么,他会写代码,会唱歌,会打游戏。我们把静态的描述称为属性(类比于外貌),动态的描述称为方法(类比于会写代码)。
下面给大家举个例子:
class Girl: #新建一个类
#属性
look = '可爱'
height = '165cm'
age = '20'
boyriend = '暂无'
#方法
def code(self):
print("我会打代码")
def say(self):
print("我喜欢夜寒哥哥")
def wechat(self):
print("关注微信公众号'夜寒信息'")
def sleep(self):
print("我去和夜寒哥哥睡觉了")
上面创建了一个类,注意类名以大写字母开头。类就相当于在生产中的一个模具,我们要利用它,就得实例化一个对象,然后才能调用它的内部的属性及方法。
以下给出方式:
>>> g = Girl() #实例化对象给变量g
>>> g.look #查看look属性
'可爱'
>>> g.height #查看height属性
'165cm'
>>> g.say() #调用say方法,注意加括号
我喜欢夜寒哥哥
>>> g.wechat() #调用wechat方法,注意加括号
关注微信公众号'夜寒信息'
>>> g.sleep() #调用sleep方法,注意加括号
我去和夜寒哥哥睡觉了
注意,class所创建的Girl是类,并不是对象。只有将类实例化给一个变量,那个变量才称之为对象,例如例子中的g
02
封装
封装就类似于打包,类中封装了属性和方法,打包成为一个模块供用户使用。同时类又有信息隐蔽功能,就像是你的游戏账号是一个类,里面有符文,点券。你把你的账号给你的女朋友玩,就类比于是把类分配给了对象。但你只想让她玩,不想让她熔你的符文,花你的点券。于是你将游戏账号设置了二级密码,将它封装起来。它可以使用你的符文,但不能销毁。
下面举个例子:
>>> ls=[] #新建一个列表
>>> ls.append(1) #使用append()函数添加一个,在列表内1
>>> ls
[1] #1添加入ls中
我们知道在往列表内添加数据要使用append方法,但我们不知道列表的类中append 方法是怎么实现的,这就是封装。
02
继承
继承就子类共享父类的属性和方法,就像是传家宝,一代传一代,传同样的东西。
下面举个例子:
>>> class Boy(Girl): #新建一个Boy类,在括号内写要继承的父类名
pass
>>> b = Boy() #将类实例化
>>> b.code() #调用code方法,注意加括号
我会打代码
>>> b.wechat() #调用wechat方法,注意加括号
关注微信公众号'夜寒信息'
我们可以看出,Boy这个类完美的继承了Girl的属性和方法。
02
多态
多态指不同对象对同一方法响应不同的行动,例如男生见到夜寒哥哥会说“这个人很帅”,而女生见到夜寒哥哥会说“夜寒哥哥好帅,好想嫁给他”,同样是说,两种人说的话却是不同的。
下面我们举个例子:
class Boysee: #新建一个Boysee类
def say(self): #定义say方法
print("这个人很帅")
class Girlsee: #新建一个Girlsee类
def say(self): #定义say方法
print("夜寒哥哥好帅,好想嫁给他")
下面我们来将他运行实现
>>> b = Boysee() #将类实例化
>>> g = Girlsee() #将类实例化
>>> b.say()
这个人很帅
>>> g.say()
夜寒哥哥好帅,好想嫁给他
由此我们看出,同样都调用了say方法,却输出了不同的结果,这就叫多态。
时光荏苒,记得奋力向前
Python进阶学习
关注微信公众号
夜寒信息
喜欢点个
关注公众号