gpt4 book ai didi

python - 调用以某物开头的类的所有方法

转载 作者:太空宇宙 更新时间:2023-11-03 12:21:09 24 4
gpt4 key购买 nike

假设我们有这样一个类:

class Test(object):

def __init__(self):
pass

def fetch_a(self):
print "a"

def fetch_b(self):
print "b"

我想在init函数中调用这个类中所有以“fetch”开头的函数。我怎样才能完成这项工作

最佳答案

您可以按如下方式进行:

class Test(object):
def __init__(self):
for i in dir(self):
if i.startswith('fetch'):
result = getattr(self, i)()

def fetch_a(self):
print "a"

def fetch_b(self):
print "b"

>>> a = Test()
a
b
>>>

[更新]

如果您只想调用以 fetch 开头的方法,而不是变量,那么可以这样做:

class Test(object):
def __init__(self):
for i in dir(self):
result = getattr(self, i)
if i.startswith('fetch') and hasattr(result, '__call__'):
result()

关于python - 调用以某物开头的类的所有方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22956891/

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