如何使用字符串来调用 Python 中的函数/方法?


Python 函数通常使用其名称进行调用。但是,你也可以使用字符串来调用函数。为此,请使用 locals() 和 globals()。

使用字符串调用函数

在本示例中,我们将学习如何使用字符串调用两个函数 -

def demo1(): print('Demo Function 1') def demo2(): print('Demo Function 2') locals()['demo1']() globals()['demo2']()

输出

Demo Function 1
Demo Function 2

使用字符串变量调用函数

在本示例中,我们创建了一个类 Example ,其中包含函数 xyzuvw(),该函数接受 arg 并打印它们。globals() 函数用于引用该类。然后,getattr() 用于在类 Example 中引用函数 xyzuvw() -

class Example: def __init__(self): pass def xyzuvw(self, arg): print('Called xyzuvw({})'.format(arg)) # Using globals() k = globals()['Example']() func = getattr(k, 'xyzuvw') func('demo argument') # Using getarr() getattr(globals()['Example'](), 'xyzuvw')('demo argument')

输出

Called xyzuvw(demo argument)
Called xyzuvw(demo argument)

更新于: 2022 年 9 月 16 日

6K+ 浏览量

开启你的 职业生涯

完成课程获得认证

开始
广告