首頁 >後端開發 >Python教學 >如何列出 Python 腳本中所有導入的模組?

如何列出 Python 腳本中所有導入的模組?

DDD
DDD原創
2024-10-28 06:40:02980瀏覽

How can I list all imported modules in my Python script?

枚舉 Python 中導入的模組

使用 Python 腳本時,通常需要確定哪些模組已導入。此資訊對於調試、模組依賴性分析等很有用。本文將探討在 Python 腳本中列出所有導入模組的有效方法。

要取得導入模組的完整列表,包括由其他導入模組導入的模組,可以使用 sys.modules 字典。此字典包含鍵值對,其中鍵是模組名稱,值是模組本身。透過迭代 sys.modules 的鍵,可以識別所有導入的模組:

import sys
for module_name in sys.modules.keys():
    print(module_name)

對於僅關注當前模組中導入的模組的更精確的方法,可以使用 globals() 函數。此函數傳回一個包含模組內定義的所有全域變數的字典。透過過濾此字典中 types.ModuleType 實例的值,只會保留導入的模組:

import types
def imports():
    for name, val in globals().items():
        if isinstance(val, types.ModuleType):
            yield val.__name__

但是,此方法有其限制。它排除使用本地或非模組導入語句導入的模組,例如 from x import y。此外,即使在匯入過程中使用了別名,它也會提供原始模組名稱。

透過利用提供的技術,開發人員可以有效地列舉 Python 腳本中的所有導入模組,從而增強對模組依賴關係和整體的理解。腳本功能。

以上是如何列出 Python 腳本中所有導入的模組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn