如何使用函式名稱從字串呼叫 Python 模組的函式?


Python 中的物件具有例項變數和方法作為屬性。要使用函式的名稱從字串呼叫模組的函式,可以先獲取該屬性,再呼叫附加到該屬性上的函式物件。例如,假設我有一個模組 foo,並且我有一個內容為“bar”的字串。呼叫 foo.bar() 的最佳方法是

>>> import foo
>>> method_to_call = getattr(foo, 'bar')
>>> result = method_to_call()

如果在全域性或區域性名稱空間中沒有模組字首,也可以使用 globals()/locals()。locals 返回包含當前區域性符號表的字典。globals 返回包含全域性符號表的字典。

例如

>>> result = locals()["myfunction"]()
or
>>> result = globals()["myfunction"]()

更新於: 11-12-2019

895 次瀏覽

開啟你的 職業生涯

完成課程獲取認證

開始
廣告