ena*_*ria 9 python bash coding-style
我有一个关于向 python 添加项目路径的问题,以促进import工作。
当我写在Python代码,我通常会添加必要的路径sys.path使用
import sys
sys.path.append("/path/to/dir/") # almost every `.py` need this
Run Code Online (Sandbox Code Playgroud)
有时,当我的项目变得更大并包含多个目录时,这种方法看起来很笨重且容易出错(尤其是当我重新组织文件时)
最近,我开始使用 bash 脚本(位于项目根目录),将sys.path.appendwith project root 参数添加到项目中的.py文件中。使用这种方法,我几乎不必手动关心导入模块。
我的问题是:这是一个好的做法吗?与我的旧方法相比,我觉得这对我自己很方便,但是由于 bash 脚本是一个单独的文件,我需要 2 个命令来运行我的项目中的任何脚本(一个用于 bash,一个用于.py. 我可以包含调用.pybash的命令,但它远不如从终端直接调用它灵活。
真的很想听听大家的建议!提前致谢。任何建议将不胜感激!
Mat*_*ory 11
sys.path在 python 库或程序中使用操作通常不是一个好习惯。您应该PYTHONPATH在 python 程序的调用环境中添加相关路径:
PYTHONPATH="/path/to/other/projects/directory:$PYTHONPATH" python ...
Run Code Online (Sandbox Code Playgroud)
或者
export PYTHONPATH="/path/to/other/projects/directory:$PYTHONPATH"
python ...
Run Code Online (Sandbox Code Playgroud)
这使您可以轻松操作程序或库将轻松搜索依赖项的路径,而无需修改代码。
通过bashrc在您的init脚本(或其他包装脚本)中修改您或您的生产环境,在您的个人开发环境中管理这一点也非常容易,并且在每次添加或修改项目路径时为您提供一个更新位置。
鉴于您提到每个.py文件几乎有一个目录,您还应该考虑如何将您的代码组织成包以进一步简化您的设置。
| 归档时间: |
|
| 查看次数: |
5772 次 |
| 最近记录: |