在 Python 中存储和触发函数
为了避免笨拙的 def 语句并方便管理多个函数,我们探索了一种存储函数的方法在数据结构中,在索引或键入时启用它们的执行。
使用字典进行函数调度
函数是 Python 中的一流对象,允许存储它们并使用字典发送。考虑以下示例:
<code class="python">dispatcher = {'foo': foo, 'bar': bar}</code>
在此字典中,foo 和 bar 是函数对象,而不是可调用实例(例如 foo() 或 bar())。要调用 foo,请使用:
<code class="python">dispatcher['foo']()</code>
在列表中存储多个函数
如果要执行分组在列表中的多个函数,可能的方法是:
<code class="python">dispatcher = {'foobar': [foo, bar], 'bazcat': [baz, cat]} def fire_all(func_list): for f in func_list: f() fire_all(dispatcher['foobar'])</code>
在这种情况下,键“foobar”映射到函数列表。 fire_all 函数迭代列表并执行每个函数。
以上是如何使用字典和列表在 Python 中存储和执行函数?的详细内容。更多信息请关注PHP中文网其他相关文章!