定义类的两种方式
# 定义一个类,创建类对象
# 1,完整版 class 类名(object): #如果类有继承其它的类,其它类的类名就写在括号中
# 2,简单版class 类名: # 如果类没有继承其它的类的话,我们使用这一种
class Cat:
pass
创建对象
接收对象的变量名 = 类名()
p = Plane()
初始化方法init
类名()
创建对象
被动触发
创建对象的同时,会触发一个init方法
对象创建出来的时候,会执行一次init方法
利用这个特性,我们可以在init方法中添加一些东西
婴儿出生的哭
游戏开始时的初始化等待
对象消失时del方法
对象从内存中被注销,被释放内存空间的时候,会自动触发的方法
1,主动删除
del 对象
del(对象)
2,游戏结束,代码运行到最终
触释器会清空所有资源,清空内存中存放的一切数据
清空一切时,自然也会清空对象
def __del__(self):
# print('del')
words = [
"我还会回来的",
"我还不想死",
"下次我会更劢害的"
]
idx = random.randint(0,2)
print(words[idx])
打印对象时的输出控制str方法
def __str__(self):
return "abc"
str方法中
返回的是什么内容
打印这个对象时,会就会显示什么内容
给对象添加属性
对象.属性 = 值
给对象添加属性的时机
-
初始化的时候
小孩一出生,肯定有一个编号,这个编号,就是相当于小孩对象的属性
小孩一出生,身高,体重,对象属性
上述的对象属性,创建的时机
应该是在初始化的时候
也就是说
是在对象被创建的时候,把属性赋给对象
.
可以利用init方法,给对象添加需要的对象属性
.
-
需要的时候
小孩长大了,参加培训
获得了技能
那么
这种技能,属于后面滔天大罪 中的属性
因此,这样一样的对象属性
不在初始化方法中赋值
可以在外面给他添加
获取对象属性的值
对象.属性 ----> 可以得到对象的属性的值
调用对象的方法
对象.方法名() -----> 让对象的方法运行起来