"Martin v. Löwis" <[EMAIL PROTECTED]> writes on Fri, 20 May 2005 18:13:56 +0200: > Robin Becker wrote: > > Firstly should python start up with non-existent entries on the path? > > Yes, this is by design. > > > Secondly is this entry be the default for some other kind of python > > installation? > > Yes. People can package everything they want in python24.zip (including > site.py). This can only work if python24.zip is already on the path > (and I believe it will always be sought in the directory where > python24.dll lives).
The question was: "should python start up with **non-existent** objects on the path". I think there is no reason why path needs to contain an object which does not exist (at the time the interpreter starts). In your use case, "python24.zip" does exist and therefore may be on the path. When "python24.zip" does not exist, it does not contain anything and especially not "site.py". I recently analysed excessive import times and saw thousands of costly and unneccesary filesystem operations due to: * long "sys.path", especially containing non-existing objects Although non-existent, about 5 filesystem operations are tried on them for any module not yet located. * a severe weakness in Python's import hook treatment When there is an importer "i" for a path "p" and this importer cannot find module "m", then "p" is treated as a directory and 5 file system operations are tried to locate "p/m". Of course, all of them fail when "p" happens to be a zip archive. Dieter -- http://mail.python.org/mailman/listinfo/python-list