class及其實例綁定方法

import types
class Student:
    def __init__(self,name):
        self.name=name
s1=Student('Mike')
def get_name(self):
    return self.name
#不用types.MethodType
s1.get_name=get_name
#調用的時候需要傳入self
s1.get_name(s1)
#使用types.MethodType
s1.get_name=types.MethodType(get_name,s1)
#可以直接調用
s1.getname()
#但是另一個的實例不可以調用
# s2=Student('John')
# s2.get_name() 報錯class綁定,所有實例都可以用
Student.get_name=get_name
s1.get_name()
s2.get_name()
#都可以正確運行






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章