目录
1、添加和获取对象属性
对象属性(也可以理解为对象的特征)它既可以在类的外面添加和获取,也能在类的里面添加和获取。
1.1 类的外面添加对象属性
语法:
对象名.属性名 = 值
1.2 类的外面获取对象属性
语法:
对象名.属性名
1.3 类里面添加对象属性
self.属性名 = 值
1.4 类的里面获取对象属性
语法:
self.属性名
1.5 应用练习
# 1、类的外面添加对象属性
# 对象名.属性名 = 值
haier1.width = 500
haier1.height = 800
# 2、类的外面获取对象属性
print(f'haier1洗衣机的宽度是{haier1.width}')
print(f'haier1洗衣机的高度是{haier1.height}')
#3、类里面获取对象属性
# 定义类
class Washer():
def (self):
print('洗衣服')
# 获取对象属性
def print_info(self):
# 类里面获取实例属性 self.属性名
print(f'haier1洗衣机的宽度是{self.width}')
print(f'haier1洗衣机的高度是{self.height}')
# 创建对象
haier1 = Washer()
# 添加实例属性
haier1.width = 500
haier1.height = 800
# 对象调用方法
haier1.print_info()
2、魔法方法
定义:在Python中,__xx__()的函数叫做魔法方法,指的是具有特殊功能的函数。
2.1 __init__()
作用:初始化对象。
注意:
__init__()方法,在创建一个对象时默认被调用,不需要手动调用。
__init__(self)中的self参数,不需要开发者传递,python解释器会自动把当前的对象引用传递过去.
class Washer():
# 定义初始化功能的函数
def __init__(self):
# 添加实例属性
self.width = 500
self.height = 800
def print_info(self):
# 类里面调用实例属性
print(f'洗衣机的宽度是{self.width}, 高度是{self.height}')
haier1 = Washer()
haier1.print_info()
2.2 带参数的__init__()
通过传参数对不同的对象设置不同的初始化属性。
class Washer():
def __init__(self, width, height):
self.width = width
self.height = height
def print_info(self):
print(f'洗⾐衣机的宽度是{self.width}')
print(f'洗⾐衣机的⾼高度是{self.height}')
haier1 = Washer(10, 20)
haier1.print_info()
haier2 = Washer(30, 40)
haier2.print_info()
2.3 __str__()
作用:输出对象信息。
当使用print输出对象的时候,默认打印对象的内存地址。如果类定义了__str__方法,那么就会打印从在这个方法中 return 的数据。
class Washer():
def __init__(self, width, height):
self.width = width
self.height = height
def __str__(self):
return '这是洗⾐机的说明书'
haier1 = Washer(10, 20)
# 这是海尔洗衣机的说明书
print(haier1)
2.4 __del__()
作用:删除对象时调用。
class Washer():
def __init__(self, width, height):
self.width = width
self.height = height
def __del__(self):
print(f'{self}对象已经被删除')
haier1 = Washer(10, 20)
# <__main__.Washer object at 0x0000026118223278>对象已经被删除
del haier1