ipython python3




ipython讀取錯誤的python版本 (6)

我一直在使用Python,iPython和庫。 以下幾點顯示了問題的鏈條。 我在Mac Lion上運行Python 2.7。

  1. iPython不讀取scipy,matplotlib的庫,但它讀取numpy。
  2. 為了解決這個問題,我嘗試安裝Python的源代碼版本,它只給了我更多的問題,因為現在我有兩個不同的版本:2.7.1和2.7.2
  3. 我注意到運行Python,使用版本2.7.2,並且導入scipy,matplotlib和numpy,但是在iPython上版本是2.7.1,它不打開scipy或matplotlib。

我嘗試了幾個我從其他博客帖子遇到的東西。 但是他們都沒有幫助,而且不幸的是我不知道我在做些什麼。 例如:我試著用easy_install和pip卸載並重新安裝ipython。 我也嘗試通過自製軟件重新安裝所有東西,並修改路徑.bash_profile。


你的問題基本上是讓ipython使用正確的python。

所以解決這個問題的方法是讓ipython使用正確的python(其中安裝了scipy之類的庫)

我在這裡寫了一個解決方案:

如何讓iPython使用Python 2而不是Python 3


好的快速修復:

which python

給你/usr/bin/python ,對嗎? 做

which ipython

我敢打賭這將是/usr/local/bin/ipython 。 讓我們看看裡面:

編輯9/7/16 - 文件現在看起來像這樣:

cat /usr/local/bin/ipython

#!/usr/bin/python

# -*- coding: utf-8 -*-
import re
import sys

from IPython import start_ipython

if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(start_ipython())

我的工作正常,但我的情況並不完全像OP。

原始答案 - 9/30/13:

cat /usr/local/bin/ipython

#!/usr/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'ipython==0.12.1','console_scripts','ipython'
__requires__ = 'ipython==0.12.1'
import sys
from pkg_resources import load_entry_point

if __name__ == '__main__':
    sys.exit(
        load_entry_point('ipython==0.12.1', 'console_scripts', 'ipython')()
    )

Aha - 在你的編輯器中打開/usr/local/bin/ipython (具有特權),並將第一行改為

#!/usr/local/bin/python

保存,啟動iPython,應該說它正在使用你現在想要的版本。


我的解決方案很簡單,但很笨,但工作。

我使用python -V來確定版本是什麼

$ python -V
Python 2.7.10

然後在.bash_profile中創建別名

$ vi ~/.bash_profile

添加一行

alias ipython="python -m IPython"

那麼你將在python 2.7中得到一個ipython 。 🙂

(順便說一下,我的ipython是通過homebrew安裝的,默認情況下會在python 3中運行ipython。)

$ brew install ipython

我能想到的絕對最簡單的解決方案,不需要擺弄環境,安裝文件或其他任何東西,都依賴於事實

  1. 可執行的ipython實際上是一個Python腳本。
  2. 對於您運行pip intall每個解釋器,都會單獨安裝IPython軟件包。

如果您正在運行的Python版本安裝了IPython軟件包,則可以這樣做

/path/to/desired/python $(which ipython)

這將使用您想要的解釋器運行ipython腳本,而不是在shebang中列出的解釋器。



類似的方法使用pyenv

pyenv install 3.4.5
pyenv local 3.4.5
pip install ipython
ipython

現在它會顯示正確版本的python

Python 3.4.5




ipython