FAQ
Hi to all,
I have troubles with TextWrangler "run" command in the "shebang" (#!)
menu.
I am on MacOSX 10.6.7.
I have the "built-in" Python2.5 which comes installed by "mother Apple".
Then I installed Python2.6, and left 2.5 untouched (I was suggested to
leave it on the system, since "something might need it").

I ran the "Update Shell Profile.command", and now if I launch "python"
in the terminal it happily launches the 2.6 version.
Then I installed some libraries (scipy and matplotlib) on this newer 2.6
version.
They work, and everything is fine.

Then, I started to use TexWrangler, and I wanted to use the "shebang"
menu, and "run" command.
I have the "#! first line" pointing to the 2.6 version.
It works fine, as long as I don't import the libraries, in which case it
casts an error saying:

ImportError: No module named scipy

Maybe for some reason it points to the old 2.5 version.
But I might be wrong and the problem is another...

I copy here the first lines in the terminal window if i give the "run in
terminal" command


Last login: Thu Apr 14 22:38:26 on ttys000
Fabio-Mac:~ fabio$
/var/folders/BS/BSS71XvjFKiJPH3Wqtx90k+++TM/-Tmp-/Cleanup\ At\
Startup/untitled\ text-324506443.860.command ; exit;
Traceback (most recent call last):
File "/Users/fabio/Desktop/test.py", line 3, in <module>
import scipy as sp
ImportError: No module named scipy
logout

[Process completed]

where the source (test.py) contains just:

#!/usr/bin/python2.6

import scipy as sp

print "hello world"


Any clue?

Thanks

Fabio

Search Discussions

  • Jon Clements at Apr 14, 2011 at 9:01 pm

    On Apr 14, 9:52?pm, Fabio wrote:
    Hi to all,
    I have troubles with TextWrangler "run" command in the "shebang" (#!)
    menu.
    I am on MacOSX 10.6.7.
    I have the "built-in" Python2.5 which comes installed by "mother Apple".
    Then I installed Python2.6, and left 2.5 untouched (I was suggested to
    leave it on the system, since "something might need it").

    I ran the "Update Shell Profile.command", and now if I launch "python"
    in the terminal it happily launches the 2.6 version.
    Then I installed some libraries (scipy and matplotlib) on this newer 2.6
    version.
    They work, and everything is fine.

    Then, I started to use TexWrangler, and I wanted to use the "shebang"
    menu, and "run" command.
    I have the "#! first line" pointing to the 2.6 version.
    It works fine, as long as I don't import the libraries, in which case it
    casts an error saying:

    ImportError: No module named scipy

    Maybe for some reason it points to the old 2.5 version.
    But I might be wrong and the problem is another...

    I copy here the first lines in the terminal window if i give the "run in
    terminal" command

    Last login: Thu Apr 14 22:38:26 on ttys000
    Fabio-Mac:~ fabio$
    /var/folders/BS/BSS71XvjFKiJPH3Wqtx90k+++TM/-Tmp-/Cleanup\ At\
    Startup/untitled\ text-324506443.860.command ; exit;
    Traceback (most recent call last):
    ? File "/Users/fabio/Desktop/test.py", line 3, in <module>
    ? ? import scipy as sp
    ImportError: No module named scipy
    logout

    [Process completed]

    where the source (test.py) contains just:

    #!/usr/bin/python2.6

    import scipy as sp

    print "hello world"

    Any clue?

    Thanks

    Fabio
    http://www.velocityreviews.com/forums/t570137-textwrangler-and-new-python-version-mac.html
    ?
  • Ernest Obusek at Apr 14, 2011 at 9:14 pm
    I'm not a python expert, but you might trying running 'print sys.path' inside your script and run that from TextWrangler to see where it's looking for modules.

    - Ernest

    On Apr 14, 2011, at 5:01 PM, Jon Clements wrote:
    On Apr 14, 9:52 pm, Fabio wrote:
    Hi to all,
    I have troubles with TextWrangler "run" command in the "shebang" (#!)
    menu.
    I am on MacOSX 10.6.7.
    I have the "built-in" Python2.5 which comes installed by "mother Apple".
    Then I installed Python2.6, and left 2.5 untouched (I was suggested to
    leave it on the system, since "something might need it").

    I ran the "Update Shell Profile.command", and now if I launch "python"
    in the terminal it happily launches the 2.6 version.
    Then I installed some libraries (scipy and matplotlib) on this newer 2.6
    version.
    They work, and everything is fine.

    Then, I started to use TexWrangler, and I wanted to use the "shebang"
    menu, and "run" command.
    I have the "#! first line" pointing to the 2.6 version.
    It works fine, as long as I don't import the libraries, in which case it
    casts an error saying:

    ImportError: No module named scipy

    Maybe for some reason it points to the old 2.5 version.
    But I might be wrong and the problem is another...

    I copy here the first lines in the terminal window if i give the "run in
    terminal" command

    Last login: Thu Apr 14 22:38:26 on ttys000
    Fabio-Mac:~ fabio$
    /var/folders/BS/BSS71XvjFKiJPH3Wqtx90k+++TM/-Tmp-/Cleanup\ At\
    Startup/untitled\ text-324506443.860.command ; exit;
    Traceback (most recent call last):
    File "/Users/fabio/Desktop/test.py", line 3, in <module>
    import scipy as sp
    ImportError: No module named scipy
    logout

    [Process completed]

    where the source (test.py) contains just:

    #!/usr/bin/python2.6

    import scipy as sp

    print "hello world"

    Any clue?

    Thanks

    Fabio
    http://www.velocityreviews.com/forums/t570137-textwrangler-and-new-python-version-mac.html
    ?
    --
    http://mail.python.org/mailman/listinfo/python-list
  • Fabio at Apr 15, 2011 at 8:51 am
    In article
    <382709dd-5e3f-4b07-a642-4ce141ef442b at 18g2000prd.googlegroups.com>,
    Jon Clements wrote:
    Thank you for the reply Jon.
    I saw the post in velocityreviews. Unfortunately it doesn't solve my
    problem.

    Cheers
  • Brian Blais at Apr 15, 2011 at 9:57 am
    Hello Fabio You have two versions of 2.6 on your system.
    On Apr 15, 2011, at 4:51 AM, Fabio wrote:
    I have the "built-in" Python2.5 which comes installed by "mother Apple".

    My OSX comes with 2.3, 2.5, and 2.6. :) These are under:

    /System/Library/Frameworks/Python.framework/Versions/
    ^^^^^^^^^

    the ones you installed are under:

    /Library/Frameworks/Python.framework/Versions/

    I can reproduce this problem on my system, because /usr/bin/python2.6 points to the system version. There is an easy solution:

    #!/usr/bin/env python

    will work, or,

    #!/usr/local/bin/python

    it's better to use the former, as it will work even as you change versions, etc... You should avoid using the shebang with a *specific* python version. just use #!/usr/bin/env python



    bb
  • Fabio at Apr 17, 2011 at 12:07 pm
    In article <mailman.371.1302815698.9059.python-list at python.org>,
    Ernest Obusek wrote:
    I'm not a python expert, but you might trying running 'print sys.path' inside
    your script and run that from TextWrangler to see where it's looking for
    modules.

    - Ernest



    Hi Ernst, Hi Brian,
    Thank you for your answers!
    With the "#!/usr/bin/env python" shebang line now it works!
    I also had more insights running "print sys.path".

    I still have to understand how comes, even with this "env trick"
    TextWrangler isn't able to "find the libraries" if I run a script "in
    TextWrangler". It only works fine if I use the "Run in Terminal" method.
    Do you have more details about how TextWrangler manages these commands?
    Which are its defalut locations?

    Cheers,

    Fabio
    On Apr 14, 2011, at 5:01 PM, Jon Clements wrote:
    On Apr 14, 9:52 pm, Fabio wrote:
    Hi to all,
    I have troubles with TextWrangler "run" command in the "shebang" (#!)
    menu.
    I am on MacOSX 10.6.7.
    I have the "built-in" Python2.5 which comes installed by "mother Apple".
    Then I installed Python2.6, and left 2.5 untouched (I was suggested to
    leave it on the system, since "something might need it").

    I ran the "Update Shell Profile.command", and now if I launch "python"
    in the terminal it happily launches the 2.6 version.
    Then I installed some libraries (scipy and matplotlib) on this newer 2.6
    version.
    They work, and everything is fine.

    Then, I started to use TexWrangler, and I wanted to use the "shebang"
    menu, and "run" command.
    I have the "#! first line" pointing to the 2.6 version.
    It works fine, as long as I don't import the libraries, in which case it
    casts an error saying:

    ImportError: No module named scipy

    Maybe for some reason it points to the old 2.5 version.
    But I might be wrong and the problem is another...

    I copy here the first lines in the terminal window if i give the "run in
    terminal" command

    Last login: Thu Apr 14 22:38:26 on ttys000
    Fabio-Mac:~ fabio$
    /var/folders/BS/BSS71XvjFKiJPH3Wqtx90k+++TM/-Tmp-/Cleanup\ At\
    Startup/untitled\ text-324506443.860.command ; exit;
    Traceback (most recent call last):
    File "/Users/fabio/Desktop/test.py", line 3, in <module>
    import scipy as sp
    ImportError: No module named scipy
    logout

    [Process completed]

    where the source (test.py) contains just:

    #!/usr/bin/python2.6

    import scipy as sp

    print "hello world"

    Any clue?

    Thanks

    Fabio
    http://www.velocityreviews.com/forums/t570137-textwrangler-and-new-python-ve
    rsion-mac.html
    ?
    --
    http://mail.python.org/mailman/listinfo/python-list
  • Jason Swails at Apr 15, 2011 at 7:30 pm

    On Thu, Apr 14, 2011 at 1:52 PM, Fabio wrote:

    Then, I started to use TexWrangler, and I wanted to use the "shebang"
    menu, and "run" command.
    I have the "#! first line" pointing to the 2.6 version.
    It works fine, as long as I don't import the libraries, in which case it
    casts an error saying:

    ImportError: No module named scipy

    Maybe for some reason it points to the old 2.5 version.
    But I might be wrong and the problem is another...
    TextWrangler doesn't launch a shell session that sources your typical
    resource files (i.e. .bashrc, etc.), so any changes you make in an
    interactive terminal session probably WON'T be loaded in TextWrangler.

    See this website about setting environment variables for native Mac OS X
    applications to see them:
    http://www.astro.washington.edu/users/rowen/AquaEnvVar.html

    Maybe if you prepend your Python 2.6 (MacPorts?) location to your PATH,
    it'll find it.

    --Jason
    -------------- next part --------------
    An HTML attachment was scrubbed...
    URL: <http://mail.python.org/pipermail/python-list/attachments/20110415/ffe02d17/attachment.html>

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppython-list @
categoriespython
postedApr 14, '11 at 8:52p
activeApr 17, '11 at 12:07p
posts7
users5
websitepython.org

People

Translate

site design / logo © 2022 Grokbase