Python的实例定属性和方法或类绑定方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python的实例定属性和方法或类绑定方法相关的知识,希望对你有一定的参考价值。
一、给实例对象绑定属性和方法:
1、给实例绑定属性:先定义一个Student类
#!/usr/bin/python
class Student(object):
pass
然后绑定属性:
s = Student()
s.name = ‘AAA‘ # 动态给实例绑定一个属性
print(s.name)#输出AAA
2、给实例绑定方法:先定义一个方法
def add(self,a,b):
self.a = a
self.b = b
return self.a +self.b
然后绑定方法:
MethodType把方法绑定在类实例上时,每个实例有自己单独的指向区域,互不干扰。MethodType(方法名,实例对象)
from types import MethodType
s.add = MethodType(add,s)
print(s.add(10,20))#输出30
print(s.a)#输出10
print(s.b)#输出20
二、给类绑定方法:
用MethodType将方法绑定到类,并不是将这个方法直接写到类内部,而是在内存中创建一个link指向外部的方法,在创建实例的时候这个link也会被复制。
MethodType(方法名,类名)
Student.add = MethodType(add,Student)
s2 = Student()
print(s2.add(10,60))#输出70
#也可以把函数直接赋给类.xxx
Student.add = add
s3 = Student()
print(s3.add(10,60))#输出70
以上是关于Python的实例定属性和方法或类绑定方法的主要内容,如果未能解决你的问题,请参考以下文章