【发布时间】:2011-11-03 05:49:24
【问题描述】:
在编写代码时,我经常遇到解决琐碎依赖项的问题。例如,让我们以我最近编写的一个 memoizer 对象的布局为例。我的目录结构如下:
memoizer/
memoizer.py
tests.py
strategies/
__init__.py
perfect.py
mru.py
queue.py
README
问题出在 mru.py 中。 mru.py 包含一个使用 queue.py 中定义的队列的 MRU 类。显然,队列不是记忆器的策略,将其置于策略之下没有任何意义。
我的一个想法是将我的代码设置为如下所示:
memoizer/
memoizer.py
tests.py
strategies/
__init__.py
perfect.py
mru/
__init__.py
mru.py
queue.py
README
这个设置的问题是现在用户必须知道 mru 在一个子包中。
另一个想法是这样安排结构:
memoizer/
memoizer.py
tests.py
strategies/
__init__.py
perfect.py
mru.py
dependencies/
__init__.py
queue.py
README
这可以解决我的问题,但直觉上似乎是错误的做法。
为了解决这种不一致,组织文件的正确方法是什么?
【问题讨论】:
标签: python file-structure