44 votes

comment tester si un module python a été importé?

Comment tester si un module a été importé en python?

par exemple, j'ai besoin de la base:

if not has_imported("sys"):
   import sys

aussi

if not has_imported("sys.path"): 
   from sys import path

Merci!

Rgs.

Merci pour tous vos commentaires: le code collé ici. importer automatiquement tous les sous-modules dans un dossier à invoquer la même nom des fonctions d'exécution python inspecter liées

50voto

delnan Points 52260

Si vous souhaitez optimiser par importez pas les choses deux fois: epargnez-vous les tracas, le Python se charge déjà de ce.

Si vous avez besoin de ceci pour éviter d' NameErrors ou quelque chose: fixez votre bâclée de codage - assurez-vous que vous n'en avez pas besoin, c'est à dire définir les (importation) de tout avant de l'utiliser (dans le cas, si les importations: une fois, au démarrage, au niveau du module).

Dans le cas où vous avez une bonne raison: sys.modules est un dictionnaire contenant tous les modules déjà importé quelque part. Mais c'est seulement contient des modules, et à cause de la from <module> import <variable> travaux (importer le module entier comme d'habitude, extrait de les choses que vous importez à partir d'elle), from sys import path ne ferait qu'ajouter sys de sys.modules (si ce n'était pas déjà importé au démarrage). from pkg import module ajoute pkg.module comme vous l'avez sans doute s'attendre.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X