9

虽然猴子补丁实例方法到类是相当简单的,例如

class A(object):
    pass

def a(self):
    print "a"

A.a = a

与另一个班级的@staticmethodà la一起做这个

class B(object):
    @staticmethod
    def b():
        print "static b"

A.b = B.b

结果A.b()产生一个

TypeErrorb()必须以A实例作为第一个参数调用未绑定的方法(什么都没有)

4

1 回答 1

10

使 Ab 成为静态方法,您应该没问题:

A.b = staticmethod(B.b)

于 2013-09-09T15:01:21.333 回答