如何在Python 中枚舉導入的模組
列出導入到給定Python 腳本或交互式會話中的模組對於內省或調試非常有用目的。為此,我們可以利用 Python 的 sys 模組。
考慮以下代碼片段:
<code class="python">import os import sys</code>
我們可以使用以下方式列出導入的模塊:
<code class="python">import sys sys.modules.keys()</code>
輸出:
['os', 'sys']
此方法提供了所有導入模組的完整列表,包括主模組中導入的模組以及模組或函數中導入的任何模組。
近似模組當前模組的導入
在需要僅在當前模組內檢查導入模組的情況下,我們可以利用globals() 函數並檢查它的模組類型。此方法提供了當前模組導入的近似值。
<code class="python">import types def imports(): for name, val in globals().items(): if isinstance(val, types.ModuleType): yield val.__name__</code>
但是,值得注意的是,此技術排除了本地導入和涉及非模組物件的導入(例如,from x import y)。此外,它還產生 val.__name__ 作為模組名稱。如果您需要檢索別名,請將yield val.__name__替換為yield name。
以上是如何在 Python 中列出導入的模組:綜合模組與目前模組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!