2016-07-29 130 views
0

我需要測試我正在建立的代碼中的幾個函數,我將其導入到jupyter筆記本中。Jupyter筆記本錯誤路徑

問題是,simTools_path是不同的功能和jupyter筆記本。更多的是,當我從我的主Python腳本調用這些函數時,它工作正常。

MWE

simTools_path /對象/ classes.py

simTools_path = os.path.abspath(os.getenv('SIMTOOLS_PATH')) 
sys.path.append(simTools_path) 

def testPath(): 
    print 'testPath', simTools_path 

jupyter筆記本

import os,sys 
# paths 
simTools_path = os.path.abspath('../') 
os.environ["SIMTOOLS_PATH"] = "simTools_path" 
os.environ["PYTHONPATH"] = "simTools_path" 
sys.path.append(simTools_path) 

from objects.classes import testPath 

print simTools_path 
testPath() 

結果:

simTools_path= /home/jhumberto/WORK/Projects/code/simulations_2016-07-14/simTools 
testPath= /home/jhumberto/WORK/Projects/code/simulations_2016-07-14/simTools/jupyterNotebooks/simTools_path 

注:

1)I使用此路徑變量在不同的功能不同的模塊內部的文件數據加載相對於simTools_path路徑。

2)我的jupyter筆記本位於/家庭/ jhumberto /工作/項目/代碼/ simulations_2016-07-14/simTools/jupyterNotebooks

任何想法?

+1

呈線條'os.environ [ 「SIMTOOLS_PATH」] = 「simTools_path」'應該讀取'os.environ [ 「SIMTOOLS_PATH」] = simTools_path' (沒有引號)?一個指向父目錄,另一個指向當前目錄中名爲simTools_path的文件夾。 – mdurant

+0

@mdurant愚蠢的我,就是這樣!謝謝!你能寫一個答案,我可以接受嗎? – jorgehumberto

回答

1

您已經混淆了變量simTools_path和文字字符串"simTools_path"。爲了解決此問題,簡單地改變線如下:

os.environ["SIMTOOLS_PATH"] = simTools_path 
+0

謝謝,修好了:) – jorgehumberto