[Python-ideas] Provide a way to import module without exec body
nas-python-ideas at arctrix.com
Fri Dec 1 03:13:37 EST 2017
I have been working on reducing Python statup time. It would be
nice if there was some way to load a module into memory without exec
of its body code. I'm sure other people have wished for this.
Perhaps there could be a new special function, similar to __import__
for this purpose. E.g. __load_module__(). To actually execute the
module, I had the idea to make module objects callable, i.e. tp_call
for PyModule_Type. That's a little too cute though and will cause
confusion. Maybe instead, add a function attribute to modules, e.g.
I have a little experimental code, just a small step:
We need importlib to give us the module object and the bytecode
without doing the exec(). My hackish solution is to set properties
on __spec__ and then have PyImport_ImportModuleLevelObject() do the
More information about the Python-ideas