Henry Dominik wrote: > Hello people, > > As a new python programmer, I created a directory in > 'C:\python24\myPythonFiles', > and added a simple python under the myPythonFiles directory; but when I > tried running it on the Python Shell, I got the following error. > > >>> import myPythonFiles.readOut
To be able to import a module, the directory containing the module must be in sys.path. sys.path is just a list of directory paths. The Python runtime searches each of these directories for your module. So one thing you can do is make sure your module is in a directory that is in sys.path. A couple of possibilities are the current working directory and the site-packages directory. On my computer (Win2K) Python puts the current working directory in sys.path. (I'm not sure this happens on Linux.) You can see this if you print sys.path; it is the empty string that starts the list. So I often cd to the directory containing a program before starting Python. Then I can import modules from that directory. For modules you want to be able to use from several programs, you can put them in C:\Python24\Lib\site-packages. This directory is always added to sys.path and it is intended as a place to install extra modules and packages. Most third-party modules will install to site-packages. Alternately you can modify sys.path to include the dir you want. There are several ways to do this. One way, as Evans showed, is to change it at runtime by appending a new path. This is fine for temporary changes but not very convenient in the long run. Another possibility is to edit the environment variable PYTHONPATH and add your dir to it. You can also create a .pth file in site-packages that contains the path to the dir to add to sys.path. You can find more info here: http://docs.python.org/tut/node8.html#SECTION008110000000000000000 http://docs.python.org/lib/module-site.html Kent _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor