Python 从不同的目录获取依赖项
我一直在开发一段代码,现在它工作得很好。。需要在生产环境中部署。 但是代码还没有准备好生产。。早些时候,我把所有的文件都放在同一个目录下,我正在调用我构建的所有库来进行我编写的一个单元测试。 但现在我被要求把它们清理干净。 所以早些时候我的目录结构就像有任何结构一样Python 从不同的目录获取依赖项,python,Python,我一直在开发一段代码,现在它工作得很好。。需要在生产环境中部署。 但是代码还没有准备好生产。。早些时候,我把所有的文件都放在同一个目录下,我正在调用我构建的所有库来进行我编写的一个单元测试。 但现在我被要求把它们清理干净。 所以早些时候我的目录结构就像有任何结构一样 .../project_name/allthecode.py 这就是我的新目录结构 .../project_name/bin/unit_test.py .../project_name/lib/native/all_the_li
.../project_name/allthecode.py
这就是我的新目录结构
.../project_name/bin/unit_test.py
.../project_name/lib/native/all_the_libraries_i_developed.py's
.../project_name/lib/third/all_the_third_parties_code.py's
现在。。如何将本机和第三方中的库调用到bin/unit_test.py
另外,我不想硬编码这个路径。。因为它将在以后的生产环境中部署..qa环境..所以我正在寻找一些小故障
at unit_test.py... go up one level (.../project_name)
now go down one level (..../project_name/lib)
From ths point move down to native and third...
更像是对目录的相对搜索?
我如何在python中得到这个
谢谢hmmm。ok找到了答案
#get current working directory
cur_dir = os.getcwd()
#move up one level
os.chdir("..")
new_cur_dir = os.getcwd()
#move down to native
os.chdir("lib")
os.chdir("native")
参考:考虑为每个库创建setup.py文件:
/project_name/lib/native/x/setup.py
from distutils.core import setup
setup(name='x',
version='1.0',
packages=['x'],
)
除了在开发模式下安装python setup.py develope之外,还可以阅读更多内容
当您这样做时,您可以从任何地方简单地导入x,但是对本地代码的任何更改都将影响整个环境
在生产环境中,即使在virtualenv中,也可以轻松地安装软件包,而且不会发生任何更改
不鼓励复杂的相对导入