我们有一堆代码在特别的本地执行中被可怕地扔在一起。我已经开始重构它,并且希望分阶段进行此操作。使cli python代码与包管理器兼容
作为第一步,我希望把我们的代码放到一个包装精美的结构:
Project/
|
|-- project/
| |-- code/
| | |-- __init__.py
| | |-- horribleness_with_importables_but_also__main__.py
| | |-- more_horribleness.py
| |-- __init__.py
|
|-- setup.py
|-- README.md
因此,我可以做适当的事情setup.py
和__init__.py
使$ pip install git+[my_project]
作品如预期,使from project.more_horribleness import *
按预期工作。
不过,现在我已经改变了我所有的本地进口的是相对的,并把进口__init__.py
S和你有什么使PIP的事情工作...所以要避免任何重大问题,现在,我也会喜欢能够克隆回购和打电话,不知何故,$ python horribleness_with_importables_but_also__main__.py
并让它像以前一样工作。有没有一种很好的方式来从我的新发现的pip包结构中运行我的python if __name__ == "__main__":
?