1.类传递参数
import self as self
class Person:
def __init__(self, name, age):
"""
init 魔术方法在实例化对象的时候触发
self = 类的对象
"""
print("init被触发")
# 定义对象属性
self.name = name
self.age = age
# 定义一个普通方法
def eat(self):
print(f"{self.name}在吃饭, 他今年{self.age}岁")
if __name__ == '__main__':
# 实例化根根 对象
lyg = Person("刘鸡鸡", 3)
# 调用类中的方法
lyg.eat()
lh = Person("刘鸡", 5)
lh.eat()
2.测试
f = open("1.txt", "r")
con_list = f.readlines()
print(con_list)
con_list.insert(2, "my name is bobi")
f.close()
print(con_list)
3.str魔术方法
# 定义一个Monkey类
class Monkey:
def __init__(self, name, hair):
"""
name = "刘鸡鸡"
hair = "gold
"""
self.name = name
self.hair = hair
def __str__(self):
"""
当实例化对象被打印的时候触发打印输出的是返回值
"""
return f"这个猴子的名字叫{self.name}, 毛发颜色是{self.hair}"
if __name__ == '__main__':
# 实例化一个刘鸡鸡对象
ljj = Monkey("刘鸡鸡", "gold")
print(ljj)
4.del魔术方法
# 定义一个类
class Computer:
def __init__(self, name, address):
self.name = name
self.address = address
def __del__(self):
"""
触发时机:在对象被删除的时候触发
"""
print(f"{self.name}对象被删除")
if __name__ == '__main__':
# 定义一个联想的电脑
Lenovo = Computer("联想", "青岛")
# 删除对象
del Lenovo
5.继承
# 定义一个类
# Python中的所有的类都默认继承object基类
class A(object):
def __init__(self):
self.num = 1
def print_info(self):
print(self.num)
# 定义一个子类
# 在B后面的括号中写A说明 A是B的父类
class B(A):
pass
if __name__ == '__main__':
# 实例化一个B的对象
b = B()
# b调用父类的方法
b.print_info()
# 子类的对象定义父类的属性
print(b.num)
6.单继承
# 定义一个师类
class Master(object):
def __init__(self):
self.Kongfu = '[大师傅配方]'
def make_cake(self):
print(f"运用{self.Kongfu}制作煎饼果子")
# 定义一个徒弟类 只有一对父子关系 的叫单继承
class Prentice(Master):
pass
if __name__ == '__main__':
# 创建一个徒弟类的对象
rpp = Prentice()
# 使用徒弟类的对象去 使用kongfu
print(rpp.Kongfu)
# 使用徒弟类的对象去调用大师类的方法
rpp.make_cake()
7.多继承
# 定义一个大师类
class Master(object):
def __init__(self):
self.kongfu = "大师煎饼果子配方"
def make_cake(self):
print(f"运用{self.kongfu}制作煎饼果子")
# 定义一个学校类
class School:
def __init__(self):
self.kongfu = "【连锁品牌的煎饼果子配方】"
def make_cake(self):
print(f"运用{self.kongfu}制作煎饼果子")
# 定义一个徒弟类 一个类有两个,甚至多个父类叫做多继承
# 寻找父类的方法,会从第一个父类开始找
class Prentice(School, Master):
pass
if __name__ == '__main__':
# 实例化一个徒弟类的对象
rpp = Prentice()
# 使用徒弟类的对象调用师傅类的属性
print(rpp.kongfu)
# 使用徒弟类的对象调用师傅类的方法
rpp.make_cake()
8.子类重写父类的属性和方法
# 定义一个大师类
class Master(object):
def __init__(self):
self.kongfu = "大师煎饼果子配方"
def make_cake(self):
print(f"运用{self.kongfu}制作煎饼果子")
# 定义一个学校类
class School(object):
def __init__(self):
self.kongfu = "【连锁品牌的煎饼果子配方】"
def make_cake(self):
print(f"运用{self.kongfu}制作煎饼果子")
# 定义一个徒弟类 一个类有两个,甚至多个父类叫做多继承
# 寻找父类的方法,会从第一个父类(超类)开始找
class Prentice(School, Master):
# 定义子类自己的init函数 不会触发父类init
def __init__(self):
self.kongfu = "[独创煎饼果子配方]"
# 重写父类的方法
def make_cake(self):
print(f"运用{self.kongfu}制作煎饼果子")
if __name__ == '__main__':
# 实例化一个徒弟类的对象
rpp = Prentice()
# 使用的是子类自己的配方
print(rpp.kongfu)
# 使用的是子类自己的方法
rpp.make_cake()










