簡體   English   中英

將ipython設置為pydev的解釋器

[英]set ipython as interpreter for pydev

我想在Pydev eclipse插件中使用IPython作為解釋器。

我有IPython 0.10和Pydev 2.5.0,在linux上運行(opensuse)。

當我進入Pydev首選項並嘗試設置IPython路徑時(如本頁所述: http//pydev.org/manual_101_interpreter.html ),我收到以下錯誤

“找不到Python stdlib或沒有.py文件找到stdlib”

ipython解釋器從bash終端正常工作,我從命令“ipython”獲取路徑。

有人能幫我嗎 ?

謝謝 !

interpreterInfo.py輸出是:

python /home/softs/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py 


<xml>
<version>2.7</version>
<executable>/usr/bin/python</executable>
<lib path="out">/home/softs/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc</lib>
<lib path="ins">/usr/local/lib64/python2.7/site-packages/scikits.timeseries-0.91.3-py2.7-linux-x86_64.egg</lib>
<lib path="ins">/usr/local/lib64/python2.7/site-packages/distribute-0.6.19-py2.7.egg</lib>
<lib path="ins">/usr/local/lib64/python2.7/site-packages/MeshPy-2011.1-py2.7-linux-x86_64.egg</lib>
<lib path="out">/data/dvp/python</lib>
<lib path="out">/home/mayet</lib>
<lib path="ins">/usr/lib/python27.zip</lib>
<lib path="ins">/usr/lib64/python2.7</lib>
<lib path="ins">/usr/lib64/python2.7/plat-linux2</lib>
<lib path="ins">/usr/lib64/python2.7/lib-tk</lib>
<lib path="ins">/usr/lib64/python2.7/lib-old</lib>
<lib path="ins">/usr/lib64/python2.7/lib-dynload</lib>
<lib path="ins">/usr/lib64/python2.7/site-packages</lib>
<lib path="ins">/usr/lib64/python2.7/site-packages/PIL</lib>
<lib path="ins">/usr/local/lib64/python2.7/site-packages</lib>
<lib path="ins">/usr/local/lib/python2.7/site-packages</lib>
<lib path="ins">/usr/lib64/python2.7/site-packages/gtk-2.0</lib>
<lib path="ins">/usr/lib/python2.7/site-packages</lib>
<lib path="ins">/usr/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info</lib>
<lib path="ins">/usr/lib64/python2.7/site-packages/wx-2.8-gtk2-unicode</lib>
<forced_lib>__builtin__</forced_lib>
<forced_lib>__main__</forced_lib>
<forced_lib>_ast</forced_lib>
<forced_lib>_codecs</forced_lib>
<forced_lib>_sre</forced_lib>
<forced_lib>_symtable</forced_lib>
<forced_lib>_warnings</forced_lib>
<forced_lib>errno</forced_lib>
<forced_lib>exceptions</forced_lib>
<forced_lib>gc</forced_lib>
<forced_lib>imp</forced_lib>                                                                                                                                                        
<forced_lib>marshal</forced_lib>                                                                                                                                                    
<forced_lib>posix</forced_lib>                                                                                                                                                      
<forced_lib>pwd</forced_lib>                                                                                                                                                        
<forced_lib>signal</forced_lib>                                                                                                                                                     
<forced_lib>sys</forced_lib>                                                                                                                                                        
<forced_lib>thread</forced_lib>                                                                                                                                                     
<forced_lib>xxsubtype</forced_lib>                                                                                                                                                  
<forced_lib>zipimport</forced_lib>                                                                                                                                                  
</xml>Traceback (most recent call last):                                                                                                                                            
  File "/home/softs/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 142, in <module>                                                              
raise RuntimeError('Ok, this is so that it shows the output (ugly hack for some platforms, so that it releases the output).')                                                   
RuntimeError: Ok, this is so that it shows the output (ugly hack for some platforms, so that it releases the output).  

這意味着在這些路徑(xml標簽)中都沒有,PyDev可以找到Python庫文件(例如threading.py或traceback.py等) - 請注意,如果你只有.pyc文件,這可能會發生其中一個文件夾中的實際.py文件)。

或者您沒有離開包含在解釋器配置過程中選擇的Python庫的文件夾。

請注意,您並未真正將“IPython”設置為解釋器,而是將Python本身設置為解釋器,並且可以安裝IPython庫以在交互式控制台中使用: http//pydev.org/manual_adv_interactive_console.html (但是從你的輸出看來你正好這樣做,因為你指的是configure / usr / bin / python)。

要將Ipython作為默認shell,請執行以下操作:轉到Window - > Preferences - > PyDev - > Interactive Console。 在Initial Interpreter Commands字段中添加以下兩個命令:import IPython; IPython.Shell.IPShell()。mainloop()現在,每次啟動控制台時,IPython都將默認啟動。

注意1:當然,你需要安裝你系統的IPy才能工作注意2:解釋器仍會抱怨類似“In [1]:PyDev控制台:使用默認后端(IPython不可用)”,但這是因為它打印在您有機會導入IPython之前自動進行。

希望這可以幫助!! 再見!

除了@mr_endres提到的步驟之外,我還必須驗證site-packages的路徑。 有文件夾,但結果是空的。

要驗證正確的路徑,您可以從終端啟動ipython並執行以下操作(僅作為示例):

 1. import numpy as np
 2. np.__file__

返回:

'`/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages`/numpy/__init__.pyc'

然后我將'/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages'添加到PYTHONPATH(在Eclipse中通過首選項 - > PyDev - >解釋器 - Python - > PYTHON PATH部分中的新文件夾)。

對我來說,以下兩個步驟有效:1)將“/usr/lib/python2.7/site-packages/”添加到PYTHONPATH 2)在Window-> Preferences-> PyDev-> Interactive Console下啟用選項“Connect console to變量調試視圖“

奇怪的是,只有第二步IPython開始......

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM