【笔记】Python3的面向对象

前言

Python3的面向对象学习笔记

定义一个类

  • 类名通常首字母大写

self:当前实例化对象后的自身

1
2
3
class 类名():
def 方法名(self):
...

通过类创建一个对象

1
对象名 = 类名()

通过对象调用方法

1
对象名.方法名()

通过对象添加和修改属性

  • 如果同名属性未被创建,则添加属性
  • 如果同名属性已被创建,则修改属性
1
对象名.属性名 = 属性值

通过对象调用属性

  • 通过对象调用属性,获得属性值

类外面获取属性

1
变量名 = 对象名.属性名

类里面获取属性

1
变量名 = self.属性名

魔法方法

  • 在Python的面向对象中,以__方法名__()为格式的方法为魔法方法,魔法方法实际上就是具有特殊功能的函数

init魔法方法

  • 用来初始化对象
  • 在实例化对象后立即执行
  • init方法的参数self不需要手动传递,python解释器会自动把当前的对象引用传递过去
1
2
3
4
5
class 类名():
def __init__(self):
...

对象名 = 类名()

带参数的init方法

1
2
3
4
5
class 类名(参数名):
def __init__(self, 参数名):
self.参数名 = 参数名

对象名 = 类名(参数值)

str魔法方法

  • 打印对象时,python解释器会自动调用str魔法方法
1
2
3
class 类名():
def __str__(self):
return "输出语句"

str魔法方法

  • 删除对象时,python解释器会自动调用del魔法方法
  • 在程序结束时,会自动删除所有临时的对象,此时会自动调用del魔法方法
1
2
3
class 类名():
def __del__(self):
print("对象被删除")

完成

参考文献

哔哩哔哩——Python-清风