python3中的types模組MethodType繫結方法
阿新 • • 發佈:2019-02-12
python3中運用types模組中的MethodType繫結方法到例項到類是非常常用的,這樣可以節省大量的時間和記憶體,可以避免大量重寫相同的方法!當然了,這也比較容易混淆!
class Student(object):
pass
def set_name(self,name):
self.name = name
def set_age(self,age):
self.age = age
def set_sc(self,x,y):
self.x = x
self.y = y
x1 = Student() #類的例項化
x2 = Student()
x1.set_age = MethodType(set_age,x1) #例項繫結一個方法
x2.set_age = MethodType(set_age,x2)
Student.setsc = MethodType(set_sc,Student) #另一種繫結
Student.set_name = MethodType(set_name,Student) #給此類繫結一個方法
x1.set_age(12) #初始化
x2.set_age(13)
x1.setsc("xmc","xu")
Student.set_name("hhh")
print(x1.age) #12
print(x2.age) #13
print(x1.x,x1.y) #xmc xu
print(x1.name) #hhh
print(x2.name) #hhh
程式碼親測可用,大家可以除錯,這是剛剛從notepad++上copy下來的,當然了,也是剛剛寫完的,畢竟寫一個部落格時間太長了,只能粗糙一點了,畢竟時間不多!