[python] ipython이 잘못된 파이썬 버전을 읽습니다.

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을 제거하고 다시 설치해 보았습니다. 또한 homebrew를 통해 모든 것을 다시 설치하고 .bash_profile 경로를 수정했습니다.



답변

좋아요 빠른 수정 :

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와 정확히 같지 않습니다.


원래 답변-2013 년 9 월 30 일 :

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을 시작하면 지금 원하는 버전을 사용하고 있다고 표시됩니다.


답변

@Matt의 댓글을 답변으로 게시하여 더 잘 보이도록

python -m IPython

먼저 경로에서 액세스 할 수있는 Python을 사용하여 ipython을 모듈로로드합니다. 제 경우에는 하나는 사전 설치되었고 하나는 brew에서 추가했습니다. 이것은 완벽하게 작동합니다.


답변

virtualenv를 사용하는 것은 어떻습니까? 난 정말 좋아. 더 빠른 방법은 아니지만 아주 분명하다고 생각합니다.

virtualenv를 생성 할 때 -p 플래그를 사용하여 python 경로를 지정할 수 있습니다.

Python 2.7 용

$ virtualenv -p /usr/bin/python2.7 venv2.7
$ source venv2.7/bin/activate
(venv2.7)$ pip install ipython
(venv2.7)$ ipython

Python 3.4 용

$ virtualenv -p /usr/bin/python3.4 venv3.4
$ source venv3.4/bin/activate
(venv3.4)$ pip install ipython
(venv3.4)$ ipython


답변

먼저 올바른 파이썬을 사용하고 있는지 확인합니다. 명령 프롬프트에서 다음을 입력합니다.

which python
python -V

첫 번째는 경로를 알려주고 두 번째는 사용중인 Python 버전을 알려줍니다.


답변

내 솔루션은 간단하고 어리석지 만 작동합니다.

나는 python -V어떤 버전인지 확인하기 위해 사용 합니다

$ python -V
Python 2.7.10

그런 다음 .bash_profile에서 별칭을 만드십시오.

$ vi ~/.bash_profile

줄 추가

alias ipython="python -m IPython"

그러면 ipython파이썬 2.7에서 얻을 수 있습니다. ?

(그런데 my ipythonis install via homebrew, it default will got an ipython run in python 3)

$ brew install ipython


답변

매우 관련성 있음 : http://conda.pydata.org/docs/troubleshooting.html#shell-command-location .

td; lr 문제는 쉘 ‘해싱’및 경로 변수로 인해 발생합니다.


답변

pyenv를 사용하는 유사한 방법

pyenv install 3.4.5
pyenv local 3.4.5
pip install ipython
ipython

이제 올바른 버전의 파이썬이 표시됩니다.

Python 3.4.5