Importierte Module in Python auflisten
Das Auflisten aller importierten Module in einem Python-Skript kann für verschiedene Zwecke nützlich sein, beispielsweise zum Debuggen oder Analysieren von Abhängigkeiten . Um dies zu erreichen, müssen einige Ansätze untersucht werden.
Eine einfache Methode besteht in der Nutzung des sys.modules-Wörterbuchs. Durch Zugriff auf sys.modules.keys() können Sie eine Liste von Zeichenfolgen abrufen, die die Namen aller importierten Module darstellen. Wenn Sie beispielsweise den folgenden Code haben:
<code class="python">import os import sys</code>
Sie können eine Liste der importierten Module wie folgt erhalten:
<code class="python">module_names = sys.modules.keys() print(module_names)</code>
Dieser Ansatz listet effektiv alle im globalen Bereich importierten Module auf . Es ist jedoch zu beachten, dass keine Module enthalten sind, die innerhalb bestimmter Funktionen oder Klassen innerhalb desselben Skripts importiert wurden.
Für eine umfassendere Ansicht, die lokal importierte Module enthält, können Sie die Funktion globals() überprüfen. Diese Funktion gibt ein Wörterbuch aller globalen Variablen im aktuellen Bereich zurück. Anschließend können Sie dieses Wörterbuch verwenden, um Module zu identifizieren, indem Sie ihren Typ mit isinstance(val,types.ModuleType) überprüfen.
Hier ist ein Beispielcode:
<code class="python">import types def imports(): for name, val in globals().items(): if isinstance(val, types.ModuleType): yield val.__name__</code>
Der Aufruf der Funktion imports() wird Durchlaufen Sie die globalen Variablen und ermitteln Sie die Namen aller importierten Module. Beachten Sie, dass diese Methode keine lokalen Importe oder Nicht-Modul-Importe berücksichtigt, wie z. B. from x import y.
Insgesamt können Sie durch die Nutzung des sys.modules-Wörterbuchs oder der Funktion globals() eine effektive Aufzählung durchführen Alle importierten Module in Python, was Flexibilität je nach benötigter Informationstiefe bietet.
Das obige ist der detaillierte Inhalt vonSo listen Sie importierte Module in Python auf: sys.modules vs. globals(). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!