將函數儲存在資料結構中以供檢索
將函數儲存在清單或字典中可以根據索引或鍵進行選擇性執行。然而,在資料結構中儲存函數呼叫的簡單方法並不能產生期望的結果。
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中文網其他相關文章!