我需要从我正在构建的代码中测试一些功能,这些代码我导入到 jupyter 笔记本中。
问题是,simTools_path在功能和 jupyter notebook 上是不同的。此外,当我从我的主要 python 脚本中调用这些函数时,它工作正常。
MWE
simTools_path/objects/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)我在不同模块内的不同函数中使用此路径变量来加载相对于simTools_path路径的文件数据。
2)我的jupyter笔记本位于/home/jhumberto/WORK/Projects/code/simulations_2016-07-14/simTools/jupyterNotebooks
有任何想法吗?