gpt4 book ai didi

python - 将类方法绑定(bind)到外部函数

转载 作者:行者123 更新时间:2023-11-28 19:35:41 25 4
gpt4 key购买 nike

尝试将类方法绑定(bind)到函数时出现错误。为什么?

def foo():
print "Hello world"

class something(object):
bar = foo

test = something()
test.bar()

TypeError: foo() takes no arguments (1 given)

此外,如果我无法修改 foo,我可以从类定义中进行改编吗?

最佳答案

一个简单的方法是将函数包装在 A 中的 staticmethod 中:

class A():
bar = staticmethod(foo)

>>> test = A()
>>> test.bar()
Hello world

关于python - 将类方法绑定(bind)到外部函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15937507/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com