specify arbitrary library directory directly in code?

scooterm at hotmail.com scooterm at hotmail.com
Thu Oct 27 20:43:42 EDT 2005


### Background
In [other programming language] it is possible to specify any special
and arbitrary directory (or set of directories) to use as a source
for custom, user-designed modules.

For example, one can do:
   ### begin script
   ### (located in ../faa/faa_script.xyz)

   ### init script
   use lib "../foo";
   use FooLibModule;

   use lib "../fee";
   use FeeLibModule;

   ### run script
   print FooLibModule::SayHelloWorld();
   print FeeLibModule::SayHelloWorld();

### Initial Findings
After searching around a bit, it appears that python does not have a
built-in mechanism for specifying arbitrary directories as the first
place to look for module code. There are options that allow one to
specify alternate directories, but all these options require changes
to environment variables, or changes (or additions) to the files in
the standard package directories.

But if you define 'built-in mechanism' meaning a change that only
requires modifying the code in 'faa_script.py' ... then there is
no 'built-in mechanism'.

### Question
Are the initial findings correct? If not, can you specify the code
(or the link to the documentation) that specifies how to do what I
am trying to do? If the initial findings are correct, are there any
alternative workarounds to allow faa_script.py to automatically
discover module code in specific sibling directories?

### Constraints
Assume changing or adding environment variables is not an option.
Assume adding files to the standard python module directories is not an

option.
Assume the only option is to change the code in faa_script.py




More information about the Python-list mailing list