定义类
class 类名():
代码
创建对象
对象名 = 类名()
self
self指的是调用该函数的对象。
# 需求:洗衣机,功能:能洗衣服
# 1. 定义洗衣机类
"""
class 类名():
代码
"""
class Washer():
def wash(self):
print('能洗衣服')
# 2. 创建对象
# 对象名 = 类名()
haier = Washer()
# 3. 验证成果
# 打印haier对象
print(haier)
# 使用wash功能 -- 实例方法/对象方法 -- 对象名.Wash()
haier.wash()
添加和获取对象属性
类外面添加对象属性
语法
对象名.属性名 = 值
haier1.width = 500
haier1.height = 800
类外面获取对象属性
语法
对象名.属性名
print(f'haier1洗⾐衣机的宽度是{haier1.width}')
print(f'haier1洗⾐衣机的⾼高度是{haier1.height}')
类里面获取对象属性
语法
self.属性名
class Washer():
def wash(self):
print('洗衣服')
haier1 = Washer()
# 添加属性 对象名.属性名 = 值
haier1.width = 400
haier1.height = 500
# 获取属性 对象名.属性名
print(f'洗衣机的宽度是{haier1.width}')
print(f'洗衣机的高度是{haier1.height}')
init()
方法的作用:初始化对象。
init()方法,在创建一个对象时默认被调用,不需要手动调用
init(self)中的self参数,不需要开发者传递,python解释器器会自动把当前的对象引 用传递过去。
# 目标: 定义init魔法方法设置初始化属性 并访问调用
"""
1. 定义类
init魔法方法: width 和 height
添加实例方法:访问实例属性
2. 创建对象
3. 验证成果
调用实例方法
"""
class Washer():
def __init__(self):
# 添加实例属性
self.width = 500
self.height = 800
def print_info(self):
print(f'洗衣机的宽度是{self.width}')
print(f'洗衣机的高度是{self.height}')
haier = Washer()
haier.print_info()
带参数的__init__()
# 1. 定义类:带参数的init:宽度和高度; 实例方法:调用实例属性
class Washer():
def __init__(self, width, height):
self.width = width
self.height = height
def print_info(self):
print(f'洗衣机的宽度是{self.width}, 洗衣机的高度是{self.height}')
# 2. 创建对象,创建多个对象且属性值不同;调用实例方法
haier1 = Washer(10, 20)
haier1.print_info()
haier2 = Washer(100, 200)
haier2.print_info()

str
当使用print输出对象的时候,默认打印对象的内存地址。如果类定义了了__str__方法,那么就会打印从 在这个方法中 return 的数据。
class Washer():
def __init__(self):
self.width = 300
def __str__(self):
return '解释说明:类的说明或对象状态的说明'
haier = Washer()
print(haier)

del()
class Washer():
def __init__(self):
self.width = 300
def __del__(self):
print('对象已经删除')
haier = Washer()
3143

被折叠的 条评论
为什么被折叠?



