最近用 pip 裝好了 yappi 這個 profiling 的模組

用 python 來 import 沒有問題:

testuser@localhost ~ $ python

>>> import yappi
>>>

 

不過用 ipython 來 import,就說找不到:

testuser@localhost ~ $ ipython

In [1]: import yappi
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-2ae58b5c5dd8> in <module>()
----> 1 import yappi

ImportError: No module named yappi

 

覺得有點奇怪,以前從來沒有遇過這種問題...

先 import os 來看一下 os 模組各別是放在哪,結果兩邊是不一樣的:

testuser@localhost $ ipython

In [1]: import os
In [2]: os.__file__
Out[2]: '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.pyc'

testuser@localhost $ python

>>> import os
>>> os.__file__
'/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.pyc'

 

應該是因為兩邊的 python lib 的位置不一樣,所以讀到不同的模組,

因此裝到 python 那邊的 yappi,ipython 才會讀不到...

而這 /usr/local/Cellar 這目錄是 Homebrew 的專用目錄,

不知道是不是用 Homebrew 安裝 python 之後出現的問題...

 

查了一下 ipython 現在的版本,是比 pip 裡的要舊,

決定把 ipython 移掉重裝看看:

sudo pip uninstall ipython
sudo pip install ipython

 

重裝之後,os 模組的位置和 python 的一樣了,而且也可以 import yappi 模組囉:

In [1]: import os

In [2]: os.__file__
Out[2]: '/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.pyc'

In [3]: import yappi

In [4]: yappi.__file__
Out[4]: '/usr/local/lib/python2.7/site-packages/yappi.pyc'

 

文章標籤
創作者介紹

亂打一通的心情日記

ephrain 發表在 痞客邦 PIXNET 留言(0) 人氣()