python 动态添加方法

Posted yandyand

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 动态添加方法相关的知识,希望对你有一定的参考价值。

#:动态添加方法
‘‘‘
需要导入模块
from type import MethodType
可以把一个指定的方法绑定到一个类上
使用方法:
p.speak = MethodType(tell,p)
p:实例名字
speak:新的方法名字
MethodType:关键字,动态添加
tell:需要添加的方法

上述是将 tell方法添加到p实例中,并将tell方法绑定到speak中
‘‘‘

from types import MethodType

class persion:
def __init__(self,name):
self.name = name

# def tell(self) #:相当于在类中添加了一个方法

def tell(self):
print(f"my name is {self.name}")

if __name__ == ‘__main__‘:
p = persion("杨洋")
p.spaek = MethodType(tell,p) #:相当于在p实例中添加一个新的方法"speak"
p.spaek() #:然后调用添加的方法,这样就可以将外部的方法添加到类中

以上是关于python 动态添加方法的主要内容,如果未能解决你的问题,请参考以下文章

Python的动态添加属性与方法

python3 - 动态添加属性以及方法

Python-动态添加属性和方法

Python 动态添加类方法

细说python类2——类动态添加方法和slots(转)

python类对象动态添加属性和方法