首页 > 文章列表 > 如何在Python中使用字符串来调用函数/方法?

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

Python中的字符串 调用函数/方法
393 2023-09-09

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() 用于引用示例类中的函数 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)