ipython python3
ipython讀取錯誤的python版本 (6)
我一直在使用Python,iPython和庫。 以下幾點顯示了問題的鏈條。 我在Mac Lion上運行Python 2.7。
- iPython不讀取scipy,matplotlib的庫,但它讀取numpy。
- 為了解決這個問題,我嘗試安裝Python的源代碼版本,它只給了我更多的問題,因為現在我有兩個不同的版本:2.7.1和2.7.2
- 我注意到運行Python,使用版本2.7.2,並且導入scipy,matplotlib和numpy,但是在iPython上版本是2.7.1,它不打開scipy或matplotlib。
我嘗試了幾個我從其他博客帖子遇到的東西。 但是他們都沒有幫助,而且不幸的是我不知道我在做些什麼。 例如:我試著用easy_install和pip卸載並重新安裝ipython。 我也嘗試通過自製軟件重新安裝所有東西,並修改路徑.bash_profile。
你的問題基本上是讓ipython使用正確的python。
所以解決這個問題的方法是讓ipython使用正確的python(其中安裝了scipy之類的庫)
我在這裡寫了一個解決方案:
好的快速修復:
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
我能想到的絕對最簡單的解決方案,不需要擺弄環境,安裝文件或其他任何東西,都依賴於事實
- 可執行的
ipython
實際上是一個Python腳本。 - 對於您運行
pip intall
每個解釋器,都會單獨安裝IPython軟件包。
如果您正在運行的Python版本安裝了IPython軟件包,則可以這樣做
/path/to/desired/python $(which ipython)
這將使用您想要的解釋器運行ipython
腳本,而不是在shebang中列出的解釋器。
極為相關: conda.pydata.org/docs/… : conda.pydata.org/docs/… 。
td;由於shell'hashing'和路徑變量而遇到lr問題。
類似的方法使用pyenv
pyenv install 3.4.5
pyenv local 3.4.5
pip install ipython
ipython
現在它會顯示正確版本的python
Python 3.4.5