Maison  >  Article  >  développement back-end  >  Comment lister tous les modules importés dans mon script Python ?

Comment lister tous les modules importés dans mon script Python ?

DDD
DDDoriginal
2024-10-28 06:40:02874parcourir

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

Énumération des modules importés en Python

Lorsque vous travaillez avec des scripts Python, il devient souvent nécessaire de déterminer quels modules ont été importés. Ces informations peuvent être utiles pour le débogage, l'analyse des dépendances des modules, etc. Cet article explorera les approches efficaces pour répertorier tous les modules importés dans un script Python.

Pour obtenir une liste complète des modules importés, y compris ceux importés par d'autres modules importés, le dictionnaire sys.modules peut être utilisé. Ce dictionnaire contient des paires clé-valeur où les clés sont des noms de modules et les valeurs sont des modules eux-mêmes. En parcourant les clés de sys.modules, tous les modules importés peuvent être identifiés :

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

Pour une approche plus précise qui se concentre uniquement sur les modules importés dans le module actuel, la fonction globals() peut être utilisée . Cette fonction renvoie un dictionnaire contenant toutes les variables globales définies dans le module. En filtrant ce dictionnaire pour les valeurs qui sont des instances de types.ModuleType, seuls les modules importés seront conservés :

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

Cette méthode a cependant des limites. Il exclut les modules importés à l'aide d'instructions d'importation locales ou non-modules, telles que from x import y. De plus, il fournit le nom d'origine du module même si un alias a été utilisé lors de l'importation.

En tirant parti des techniques fournies, les développeurs peuvent énumérer efficacement tous les modules importés dans leurs scripts Python, améliorant ainsi leur compréhension des dépendances des modules et, en général, fonctionnalité de script.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn