Dynamical loading of modules

Jacob Kroon jacob.kroon at gmail.com
Mon Oct 3 15:52:21 EDT 2005


Hi, I'm having some problems with implementing dynamical module loading. 
First let me
describe the scenario with an example:

modules/
    fruit/
        __init__.py
        apple.py
        banana.py

apple.py defines a class 'Apple', banana defines a class 'Banana'. The 
problem lies in the
fact that I want to be able to just drop a new .py-file, for instance 
peach.py, and not change
__init__.py, and it should automatically pickup the new file in 
__init__.py. I've come halfway
by using some imp module magic in __init__.py, but the problem I have is 
that the instantiated
objects class-names becomes fruit.apple.Apple/fruit.banana.Banana, whild 
I want it to be
fruit.Apple/fruit.Banana.

Is there a smarter way of accomplishing what I am trying to do ?
If someone could give me a small example of how to achieve this I would 
be very grateful.

Regards Jacob Kroon




More information about the Python-list mailing list