【发布时间】:2012-10-19 07:01:15
【问题描述】:
网络上有很多关于 Python 项目可以/应该是什么结构的建议,例如What is the best project structure for a Python application?.
"proj-dir"
+- doc
+- apidoc
+- scripts
+- "src-dir"
+- tests
似乎 Python 世界中的许多人更喜欢“src-dir”和“proj-dir”相等(或非常相似)。但是,脚本和测试肯定要从 src-dir 导入一些模块,所以要么我不得不
- 当 proj-dir 作为我当前的工作目录时运行所有脚本和测试,或者
- PYTHONPATH 必须包含 proj-dir,对吗?
或者,还有其他我现在忽略的可能性吗?
假设我有这样的结构并且正确设置了 PYTHONPATH。现在我将项目提交到 VCS,另一个开发人员检查项目。在他的机器上,PYTHONPATH 将无法正确设置,并且脚本和测试中的导入将无法正常工作。
- 是否有可能以某种方式使 PYTHONPATH 定义成为项目的一部分,从而使其成为版本控制的一部分?
- 是否有不同的项目结构可以让我在不修改 PYTHONPATH 的情况下结帐并开始使用该项目?
- 这里建议的解决方案是:Python - How to PYTHONPATH with a complex directory structure?(即在每个脚本和测试中包含一个修改 sn-p 的短 sys.path)正确的?
- 站点模块http://docs.python.org/2/library/site.html 有帮助吗?
- 在开发具有类似结构的项目时,您的工作流程是什么?
【问题讨论】:
标签: version-control pythonpath project-structure