将函数存储在数据结构中以供检索
将函数存储在列表或字典中可以根据索引或键进行选择性执行。然而,在数据结构中存储函数调用的简单方法并不能产生期望的结果。
Python 对函数作为第一类对象的支持提供了一个优雅的解决方案。通过将函数视为对象,可以使用字典来调度它们。键代表函数,而值是函数对象本身。要执行函数,只需将字典项作为带括号的函数调用即可。
dispatcher = {'foo': foo, 'bar': bar} dispatcher['foo']()
对于将多个函数存储为字典中的列表的情况,可以使用循环来执行每个函数。
def fire_all(func_list): for f in func_list: f() dispatcher = {'foobar': [foo, bar], 'bazcat': [baz, cat]} fire_all(dispatcher['foobar'])
这种方法可以方便地存储和检索函数,特别是对于大量的函数,记住特定的函数名称会变得很麻烦。
以上是如何在 Python 数据结构中存储和检索函数?的详细内容。更多信息请关注PHP中文网其他相关文章!