gpt4 book ai didi

python - 使用类方法作为函数的参数

转载 作者:行者123 更新时间:2023-12-02 16:06:02 25 4
gpt4 key购买 nike

我想将一个类方法作为参数传递给一个将方法应用于实例的函数。我写了一个我的问题的简化示例,但它不起作用。有没有办法在 python 中执行此操作?

class A:
def __init__(self):
self.values = [1,2,3]

def combine(self) -> int:
return sum(self.values)

def return_zero(self) -> int:
return 0


def apply_func(instance, func):
return instance.func()


print(apply_func(A(), A.combine))

> AttributeError: 'A' object has no attribute 'func'

最佳答案

你可以使用 getattr() :

def apply_func(instance, func):
fn = getattr(instance, func)
return fn()


print(apply_func(A(), 'combine'))

输出:

6

关于python - 使用类方法作为函数的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69375529/

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