Python的實例定屬性和方法或類綁定方法
阿新 • • 發佈:2018-03-19
Python一、給實例對象綁定屬性和方法:
1、給實例綁定屬性:先定義一個Student類
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的實例定屬性和方法或類綁定方法