So listen Sie importierte Module in Python auf: sys.modules vs. globals()

Mary-Kate Olsen
Freigeben: 2024-10-28 08:17:02
Original
1055 Leute haben es durchsucht

How to List Imported Modules in Python: sys.modules vs. globals()

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>
Nach dem Login kopieren

Sie können eine Liste der importierten Module wie folgt erhalten:

<code class="python">module_names = sys.modules.keys()
print(module_names)</code>
Nach dem Login kopieren

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>
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage