É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!