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

Reply via email to