On Thu, Jan 26, 2012 at 8:49 AM, Jean-Michel Pichavant
<jeanmic...@sequans.com> wrote:
> Brian Brinegar wrote:
>>
>> JM,
>>
>> Thanks for the response, you're correct '' is pre-pended to the path
>> in interactive mode. I've tried adding . to my PYTHONPATH and it
>> doesn't solve the problem.
>>
>> When imported from interactive python the paste.deploy module is located
>> at:
>>
>>
>>>>>
>>>>> import paste.deploy
>>>>> paste.deploy.__path__
>>>>>
>>
>> ['/home/brian/webapps/test_dyn/lib/python2.7/paste/deploy']
>>
>> My path for both interactive and non-interactive contains:
>>
>> /home/brian/webapps/test_dyn/lib/python2.7
>>
>> From the interactive interpreter I can import paste if my working
>> directory is inside of the.
>>
>> /home/brian/webapps/test_dyn
>>
>> Moving to a working directory above "test_dyn" point causes the import
>> to fail in the interactive interpreter as well.
>>
>> I am able to import packages located the lib/python2.7/site-packages
>> directory of my virtualenv instance, but not the lib/python2.7
>> directory.
>>
>> Thanks again,
>> Brian
>>
>>
>>
>> On Thu, Jan 26, 2012 at 5:58 AM, Jean-Michel Pichavant
>> <jeanmic...@sequans.com> wrote:
>>
>>>
>>> Brian wrote:
>>>
>>>>
>>>> I've been banging my head against this for the past hour, and I'm
>>>> hoping someone here can set me straight.
>>>>
>>>>
>>>>
>>>
>>> [Snip]
>>>
>>>>
>>>> but, using the same same python, I'm able to import the module from
>>>> the interactive interpreter. The PATH and PYTHONPATH environment
>>>> variables are identical in both contexts.
>>>>
>>>>
>>>
>>> Are you sure ? with python 2.5, in interactive mode '' is happened to
>>> sys.path and is absent from it when a python file is executed.
>>>
>>> python -c "import sys; print '' in sys.path"
>>> True
>>> python test.py
>>> False
>>>
>>>
>>>>
>>>> Under what situations would a module be available to through the
>>>> interactive interpreter but not the non-interactive?
>>>>
>>>> I greatly appreciate any thoughts,
>>>> Brian
>>>>
>>>>
>>>
>>> As a more general notice, if you want to be able to import paste from
>>> everywhere, it must be properly installed as a python module.
>>>
>>> Cheers,
>>>
>>> JM
>>>
>
> Difficult to say without your PYTHONPATH value.
>
> Assuming your PYTHONPATH is
>
> /home/brian/webapps/test_dyn/lib/python2.7/site-packages
>
> 1/ paste is stable, copy the paste directory into
> /home/brian/webapps/test_dyn/lib/python2.7/site-packages
> 2/ paste is not stable, i.e. you're changing it from time to time, make a
> symbolic link to your dev paste directory within
> /home/brian/webapps/test_dyn/lib/python2.7/site-packages
>
> you should now be able to import paste from anywhere.
>
> JM
>
>
> PS : please don't top post

JM,

Thanks so much for all of your help. I added a symlink in
site-packages and it still did not work. Upon further investigation I
found that the there wasn't an __init__.py in the paste or
paste/deploy directories. Creating python2.7/paste/__init__.py and
python2.7/paste/deploy/__init__.py fixed the issue without a need for
the symlink.

I'm curious why the interactive interpreter is able to import this
without the proper package structure.

Thanks again for your help,
Brian
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to