Question: In Python 2.5, I import modules by changing environment variables. It works, but using site-packages does not. Is there another way to import modules in directories other than C:\Python25 ?

Answer: 
On way is with [**`PYTHONPATH`**](http://docs.python.org/using/cmdline.html#envvar-PYTHONPATH) environment variable. Other one is to add path to [**`sys.path`**](http://docs.python.org/library/sys.html#sys.path) either directly by **`sys.path.append(path)`** or by defining **`.pth`** files and add them to with [**`site.addsitedir(dirWithPths)`**](http://docs.python.org/library/site.html#site.addsitedir). Path files (`.pth`) are simple text files with a path in each line. Every `.pth` file in `dirWithPths` will be read.
Directories added to the `PYTHONPATH` environment variable are searched after `site-packages`, so if you have a module in `site-packages` with the same name as the module you want from your `PYTHONPATH`, the `site-packages` version will win. Also, you may need to restart your interpreter and the shell that launched it for the change to the environment variable to take effect.

If you want to add a directory to the search path at run time, without restarting your program, add the directory to `sys.path`. For example:

```
import sys
sys.path.append(newpath)

```

If you want your new directory to be searched before `site-packages`, put the directory at the front of the list, like this:

```
import sys
sys.path.insert(0, newpath)

```