Heim  >  Artikel  >  Backend-Entwicklung  >  Wie liste ich importierte Module in Python auf: Umfassendes oder aktuelles Modul?

Wie liste ich importierte Module in Python auf: Umfassendes oder aktuelles Modul?

Susan Sarandon
Susan SarandonOriginal
2024-10-30 07:55:27182Durchsuche

How to List Imported Modules in Python: Comprehensive vs. Current Module?

So zählen Sie importierte Module in Python auf

Das Auflisten der importierten Module in ein bestimmtes Python-Skript oder eine interaktive Sitzung kann zur Selbstbeobachtung oder zum Debuggen nützlich sein Zwecke. Um dies zu erreichen, können wir das sys-Modul von Python nutzen.

Betrachten Sie den folgenden Codeausschnitt:

<code class="python">import os
import sys</code>

Wir können die importierten Module auflisten mit:

<code class="python">import sys
sys.modules.keys()</code>

Ausgabe :

['os', 'sys']

Dieser Ansatz bietet eine umfassende Liste aller importierten Module, einschließlich derjenigen, die im Hauptmodul importiert wurden, sowie aller Module, die innerhalb von Modulen oder Funktionen importiert wurden.

Annäherungsmodul Importe für das aktuelle Modul

In Szenarien, in denen es wünschenswert ist, importierte Module nur innerhalb des aktuellen Moduls zu überprüfen, können wir die Funktion globals() verwenden und sie auf Modultypen untersuchen. Diese Methode liefert eine Annäherung an die Importe des aktuellen Moduls.

<code class="python">import types
def imports():
    for name, val in globals().items():
        if isinstance(val, types.ModuleType):
            yield val.__name__</code>

Es ist jedoch zu beachten, dass diese Technik lokale Importe und Importe mit Nicht-Modul-Objekten (z. B. von x import y) ausschließt. Darüber hinaus wird val.__name__ für Modulnamen zurückgegeben. Wenn Sie stattdessen den Alias ​​abrufen müssen, ersetzen Sie yield val.__name__ durch yield name.

Das obige ist der detaillierte Inhalt vonWie liste ich importierte Module in Python auf: Umfassendes oder aktuelles Modul?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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