2016-01-24 122 views
21

在Jupyter我自己的小模塊沒有加載,但在python/bpython是一切都很好。當輸入在Jupyter和Python中sys.path不同 - 如何在Jupyter中導入自己的模塊?

import sys 
print(sys.path) 

的路徑,我模塊將不會在節目中Jupyter但是在Python/bpython它仍然存在。

我使用:

  1. PYTHONPATH在.bashrc中,包括我的模塊,
  2. Jupyter和bpython一個的virtualenv內。

最相似的問題是這樣的 Cannot import modules in jupyter notebook; wrong sys.path

如何Jupyter配置,自動將加載我的模塊?

+0

你試圖運行Jupyter內'sys.path.append( '/路徑/到/你/代碼')'IPython的外殼或筆記本?如果這樣,你可以將這個命令添加到ipython配置文件中。 – miraculixx

+0

感謝您使用ipython配置文件的提示。我不知道ipython/jupyter是否擁有它自己的東西。一個好的指導是做什麼在這裏找到http://www.lucypark.kr/blog/2013/02/10/when-python-imports-and-ipython-does-not/ – ulf

+0

一個一般性的評論是運行通過一個水蟒環境。這樣你a)不會混淆系統文件,b)都運行相同版本的軟件包並避免混淆。 對於您的模塊,編寫setup.py並在環境中安裝它的可編譯版本非常簡單。通過這種方式,你可以立即執行 「'導入我的模塊」。 – GrigorisG

回答

11

以下是我在jupyter筆記本做我的項目,

import sys 
sys.path.append("../") # go to parent dir 
from customFunctions import * 

然後,以影響customFunctions.py變化,

%load_ext autoreload 
%autoreload 2 
5

Jupyter都有自己的PATH變量,JUPYTER_PATH。

添加此行到.bashrc文件爲我工作:

export JUPYTER_PATH=<directory_for_your_module>:$JUPYTER_PATH 
相關問題