📅  最后修改于: 2023-12-03 15:19:12.244000             🧑  作者: Mango
在Python中,我们可以使用字符串来动态调用函数。
对于Python内置函数,我们可以使用eval
函数将字符串转换为可执行代码。
result = eval("len('Hello World!')")
print(result)
# Output: 12
对于自定义函数,我们可以使用getattr
函数从模块或对象中获取函数,并使用括号调用函数。
# 定义函数
def say_hello():
print("Hello World!")
# 调用函数
func_name = "say_hello"
func = getattr(__main__, func_name)
func()
# Output: Hello World!
对于类方法,我们可以使用getattr
函数获取类,并使用括号调用类方法。
# 定义类
class Car:
@classmethod
def start(cls):
print("The car has started.")
# 调用类方法
class_name = "Car"
method_name = "start"
cls = getattr(__main__, class_name)
method = getattr(cls, method_name)
method()
# Output: The car has started.
以上就是使用Python字符串调用函数的方法。无论是内置函数还是自定义函数或类方法,都可以使用相应的方法轻松实现。