动态绑定属性的方法
- Python是动态语言,在创建对象之后可以动态地绑定属性和方法
class Student:
def __init__(self, name, age):
self.name = name
self.age = age
def person(self):
print(self.name + '在吃饭')
stu1 = Student('张三', 20) # Student类的实例对象
stu2 = Student('李四', 30)
# 一个Student类可以创建N个Student类的实例对象,每个实例对象的属性不同或者相同
# 为stu2动态绑定性别属性
stu2.gender = '女' # 为stu2动态绑定属性
print(stu1.name, stu2.age)
print(stu2.name, stu2.age, stu2.gender)
# 动态绑定方法
stu1.person()
stu2.person()
def show(): # 定义在类之外,称之为函数
pass
stu1.show = show # 动态绑定方法
stu1.show()
--------------------------------------------------
张三 30
李四 30 女
张三在吃饭
李四在吃饭
知识点总结
实例方法调用方式
stu1 = Student()
stu1.eat() # 根据‘实例对象名.方法名’调用
Student.eat(stu1) # 根据‘类名.方法名’调用