gpt4 book ai didi

python - 调用类中函数的函数

转载 作者:行者123 更新时间:2023-12-01 08:51:46 24 4
gpt4 key购买 nike

我有一个问题,我想要一个调用或执行类内所有函数的函数。

class example:
def foo(self):
print("hi")
def bar(self):
print("hello")
def all(self):
self.foo()
self.bar()

有没有更好的方法来做到这一点?由于我的类有大约 20 个函数,我只想用一个函数来调用所有这些函数。谢谢

最佳答案

参见How do I get list of methods in a Python class?如何使用检查或目录登记方法

虽然都很丑陋,但检查是首选方法。您可以通过检查调用对象的所有方法

import inspect

class A:
def h(self):
print ('hellow')

def all(self):


for name, f in inspect.getmembers(self, predicate=inspect.ismethod):

if name != 'all' and not name.startswith('_'):
f()


a = A()
a.all()

如果更喜欢 dir 你可以尝试 - catch getattr(self, attr)()

for attr in dir(self):
try:
getattr(self, attr)()
except Exception:
pass

关于python - 调用类中函数的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53067204/

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