How to test if a module has been imported in python?
for example I need the basics:
if not has_imported("sys"):
import sys
also
if not has_imported("sys.path"):
from sys import path
Thanks!
Rgs.
Thanks for all of your comments:
the code been pasted here.
auto import all sub modules in a folder then invoke same name functions – python runtime inspect related
If you want to optimize by not importing things twice, save yourself the hassle because Python already takes care of this.
If you need this to avoid
NameErrorsor something: Fix your sloppy coding – make sure you don’t need this, i.e. define (import) everything before you ever use it (in the case if imports: once, at startup, at module level).In case you do have a good reason:
sys.modulesis a dictionary containing all modules already imported somewhere. But it only contains modules, and because of the wayfrom <module> import <variable>works (import the whole module as usual, extract the things you import from it),from sys import pathwould only addsystosys.modules(if it wasn’t already imported on startup).from pkg import moduleaddspkg.moduleas you probably expect.