Larry Bates wrote: > stef mientki wrote: > >> hello, >> >> my program has become a bit large, >> and now I want to split the files over several subdirectories. >> So in the example shown below, I just moved the files f1.py and f2.py to >> a deeper subdirectory. >> >> basedirectory\ >> mainfile.py >> file1.py >> file2.py >> subdir1\ >> __init__.py >> f1.py >> f2.py >> >> Now I don't want (even can't) change my program, >> to change imports from >> from f1 import something >> into >> from subdir1.f1 import something >> simply because f1.py and f2.py are python files dropped by users >> and I do not know on forehand what will be dropped. >> >> I looked into the description of __init__.py, >> in the hope I could make f1.py and f2.py available as if they were in >> the basedirectory, >> but i couldn't find a way. >> >> Is there a way to make f1.py and f2.py available as if they were located >> in the base directory, >> without knowing their names (so in general all py-files in the subdir1) ?? >> >> thanks, >> Stef Mientki >> >> >> > Put basedirectory\subdir in the PYTHONPATH environment variable or > > os.path.append(r'basedirectory\subdir1') > > in the body of your program. > > thanks Larry, after a bit of fiddling, I think "os." must be "sys." and basedirectory shouldn't be in. so it becomes sys.path.append ( r'subdir1' ) But what the .. is that "r" in front of the appended path ?
cheers, Stef Mientki > -Larry > -- http://mail.python.org/mailman/listinfo/python-list