亦庄网站开发公司,什么专业的会做网站,海外推广服务公司,网站做很久了百度没收录创建一个 Student 测试类#xff0c;初始化时添加 name 和 age 实例属性
class Student:def __init__(self,name,age):self.namenameself.ageage动态为 Student 类 xh 实例对象动态添加 实例属性
xh Student(小黄,20) # 实例化对象
xh.weight 20 …创建一个 Student 测试类初始化时添加 name 和 age 实例属性
class Student:def __init__(self,name,age):self.namenameself.ageage动态为 Student 类 xh 实例对象动态添加 实例属性
xh Student(小黄,20) # 实例化对象
xh.weight 20 # 为 xh 实例对象动态添加 weight 实例属性动态为 Student 类对象添加动态 类属性
Student.shcool 大学 # 通过类对象进行动态添加类属性# 通过类对象去访问动态添加的 类属性
print(Student.shcool)注意 类属性 可以通过 实例对象和类对象共同访问实例属性 只能通过实例对象去访问 动态为 Student 类 xh 实例对象动态添加 实例方法
首先创建一个要动态添加的 实例方法 testMethod
def testMethod(self): #self 指向为当前类的实例必填print(这个是类的实例方法)# 动态添加实例方法时需要引入 types 库。动态添加类方法或静态方法则不需要引入该库
import typesxh.printInfotypes.MethodType(testMethod,xh)# 动态绑定 xh 对象实例方法第一个参数为要绑定的方法第二个参数为要绑定的当前对象实例# 调用动态添加的 xh 对象实例方法
xh.printInfo()动态为 Student 类对象动态添加 类方法和静态方法
创建类方法和静态方法分别需要使用修饰符 classmethod 和 staticmethod
# 创建类方法
classmethod
def test1Method(cls): # 类方法第一个参数 cls 必填指向为当前 Student 类对象。可以通过当前对象去访问到类的属性和方法但不能访问类的实例属性和实例方法。因为实例属性和实例方法只有实例对象能访问。print(这个是类方法)staticmethod
def test2Method(): #静态方法参数可有可无print(这个是静态方法)# 给当前 Student 类对象动态添加类方法
Student.test1test1Method
# 调用动态添加的类方法
Student.test1()# 给当前 Student 类对象动态添加静态方法
Student.test2test2Method
# 调用动态添加的静态方法
Student.test1()注意 类方法和类属性一样类方法可以由当前类对象和实例对象共同访问实例方法和实例属性同理只能由当前的实例所访问