Importing different versions of a module

Fredrik Lundh fredrik at
Mon Jul 21 23:55:41 CEST 2008

mercado mercado wrote:

> I have two versions of a script on my machine. One version is for new 
> development and the other version is a production version.  This script 
> imports a module from a different directory, and this module again has 
> two versions (a development version and a production version).  What I 
> want is for the development script to import the development module, and 
> the production script to import the production module, without making 
> any changes to the code in the script.

if you already have two different versions of the script, what stops you 
from making changes to them?

> For example, suppose the development script is in ~/dev/, and the 
> production script is in ~/prod/  I want the dev version to import 
> /usr/lib/python2.5/site-packages/lib_dev/, and the prod version 
> to import usr/lib/python2.5/site-packages/lib_prod/

cannot you just insert the appropriate directory in sys.path the first 
thing you do in the scripts?  e.g.

     import os, sys

     lib = "lib_dev" # change this for prod/

             os.path.dirname(os.__file__), "site-packages", lib

     import parse # picks the right one


More information about the Python-list mailing list