Skip to main content
 首页 » 编程设计

python之如何将函数调用添加到列表

2025年05月04日15kuangbin

我有一个使用以下函数的 Python 代码:

def func1(arguments a, b, c): 
 
def func2(arguments d, e, f): 
 
def func3(arguments g, h, i): 

上述每个功能都在产品上配置了一个 CLI 命令。

此外,对于上述每个函数,都有删除 CLI 命令的 de-init 函数。

def de_init_func1(arguments x, y, z): 
 
def de_init_func2(arguments l, m, n): 
 
def de_init_func3(arguments q, r, s): 

假设我有一个脚本,它使用函数 func1、func2 和 func3 配置大量 CLI 命令,并且在脚本完成之前,脚本应该删除它配置的所有 CLI 命令。

为此,每次调用 func1/2/3 时,我需要将等效的 de_init_func CALL 添加到列表中,因此在脚本结束时,我可以迭代此列表,并调用 de-init方法一一。

如何将“func1(arguments) 调用”添加到列表而不在将其添加到列表时调用它。

如果我只是将 func1(arguments) 调用添加为字符串“func1(arguments)”,一旦我将迭代列表,我将无法调用函数调用,因为解释器将引用列表项作为字符串而不是函数调用...

请您参考如下方法:

在最简单的层面上,您可以简单地使用元组来引用函数调用。例如,对 func1(a, b, c) 的调用将由元组 (func1, a, b, c) 引用。然后您可以安全地将这些元组放入列表中。

要稍后执行由这样一个元组表示的函数(比如 t),只需使用:

t[0](*t[1:]) 

即:使用剩余类型中的参数调用 t[0] 中的函数。