[Python-ideas] Import and '..', '../..' in serach path.
Brett Cannon
brett at python.org
Tue Jan 30 20:32:21 CET 2007
More information about the Python-ideas mailing list
Tue Jan 30 20:32:21 CET 2007
- Previous message: [Python-ideas] Import and '..', '../..' in serach path.
- Next message: [Python-ideas] Import and '..', '../..' in serach path.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 1/30/07, Ron Adam <rrr at ronadam.com> wrote: > > In order to resolve a path conflict where I'm working on several copies of the > same package. I found it useful to add the following near the top of modules in > a package or sub package. > > > Module in package: > > import sys > sys.path = ['..'] + sys.path > > import package.module # Imports module in "this!" package. > > > Note: There could still be conflicts if a module with the same name is in the > same directory as the package. But that's much less likely than one in the rest > of the path. > > > Module in sub-package: > > import sys > sys.path = ['../..'] + sys.path > > import package.subpackage.module # finds "self" (subpackage) reliably. > > > By explicitly adding the packages parent directory to the *front* of sys.path it > resolves cases where imports using absolute imports, import modules from another > package because they are found first in the search path. Why aren't you using relative imports (e.g., ``from . import module``)? That should be doing exactly what you want. That uses __path__ which is set to the path of the package. -Brett
- Previous message: [Python-ideas] Import and '..', '../..' in serach path.
- Next message: [Python-ideas] Import and '..', '../..' in serach path.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-ideas mailing list