1. 定义类
class 类名:
def ⽅法名(self):
pass
self是形参
Python 解释器在执⾏代码时, ⾃动将调⽤这个⽅法的对象传递给self, 即 self 的本质是对象
只需要确定通过哪个对象调⽤, 对象的引⽤和 self 的引⽤是⼀样的
self 是函数中的局部变量, 直接创建的对象是全局变量
2. 创建对象
变量 = 类名()
3. 调⽤⽅法
对象.⽅法名()
- #1.定义类
- class Preson:
- def drink(self):
- print("drink water....")
- def eat(self):
- print("eat food....")
- #2.创建对象
- lili=Preson()
- mike=Preson()
-
- #3.通过对象创建方法
- lili.eat()
- mike.drink()
对象的属性操作
添加属性 :对象.属性名 = 属性值
类内部添加
在内部⽅法中, self 是对象,
self.属性名 = 属性值 # 在类中添加属性⼀般写在 __init__ ⽅法中
类外部添加
对象.属性名 = 属性值
获取属性 :对象.属性名
类内部
self.属性名
类外部
对象.属性名
- #1.定义类
- class Person:
- def drink(self):
- # 在内部获取属性
- print(f'{self.name}drink water....')
-
- def eat(self):
- #在内部添加属性
-
- print("eat food....")
- #2.创建对象
- lili=Person()
- mike=Person()
-
- # 在类外部添加name属性
- lili.name='莉莉'
- mike.name = '迈克'
-
- #3.通过对象创建方法
-
- lili.drink()
- mike.drink()
_init__ ⽅法
创建对象之后会⾃动调⽤
_init__ ⽅法给对象添加属性, (初始化⽅法, 构造⽅法)
某些代码, 在每次创建对象之后, 都要执⾏,就可以将这⾏代码写在 __init__ ⽅法
init ⽅法中,存在出了 self 之外的参数, 在创建对象的时候必须传参
- # 1.定义类
- class Person:
- # 定义添加属性的方法
- def __init__(self,name,age):
- # 给对象添加属性
- self.name = name
- self.age = age
-
- # 定义输出属性信息
- def show_info(self):
- print(f'名字是: {self.name}, 年龄是:{self.age}')
-
- # 2.创建对象
- lili=Person('莉莉',18)
- mike=Person('迈克',20)
-
- # 3.通过对象创建方法
- lili.show_info()
- mike.show_info()
__str__ ⽅法
使⽤ print(对象) 打印对象的时候 会⾃动调⽤
在这个⽅法中⼀般书写对象的 属性信息的, 即打印对象 的时候想要查看什么信息,在这个⽅法中进⾏定义的
如果类中没有定义 __str__ ⽅法, print(对象) ,默认输出对象的引⽤地址
这个⽅法必须返回 ⼀个字符串
- # 1.定义类
- class Person:
- # 定义添加属性的方法
- def __init__(self,name,age):