首页 > 编程语言 > 详细

正确地组织python项目的结构

时间:2014-01-26 19:43:20      阅读:497      评论:0      收藏:0      [点我收藏+]

统一的项目结构

写了不少python项目后, 越来越认识到Python项目结构重要性. 不管项目是否要开源, 是否要提交pypi, 项目结构的一致性带来的好处还有很多: 多人合作开发大家都有个基本的guideline, 别人日后维护也方便, 也容易形成项目开发的best practice.

所以花了写时间, 仔细研究了github上python的 top 10 项目的结构, 项目结构还真不太一样. 比较合我口味的是sandman这个项目. 我做了少许的修改, 主要是将tests package 从sandman package下移到顶层目录.

|- LICENSE
|- README.md
|- TODO.md
|- docs
| |-- index.md
| |-- installation.md
| |-- quickstart.md
|- sandman
| |-- init.py
| |-- exception.py
| |-- model.py
| |-- sandman.py
|- tests
| |-- init.py
| |-- testsandman.py
|- setup.py
|- tox.ini
|- .gitignore
|- requirements.txt
|- requirements
dev.txt ,比requirements.txt多的是单元测试依赖库

Top 10项目的研究发现:

  1. readme.md和setup.py和requirements.txt放在根目录下
  2. 一个项目至少有3个子目录, docs目录, root package 和tests package
  3. 的python代码要放在一个package中, 而不是一般的src目录中.
  4. tox 测试工具大家都在用.
  5. 用pytest和nose单元测试工具比较多, 尤其是pytest

脚手架工具:

下载并安装cookiecutter命令行工具, 网站: 下载 pip install cookiecutter

[cookiecutter更详细的教材]见: (http://pydanny.com/cookie-project-templates-made-easy.html)

参考:

http://www.jeffknupp.com/blog/2013/08/16/open-sourcing-a-python-project-the-right-way/

正确地组织python项目的结构

原文:http://www.cnblogs.com/harrychinese/p/python_project_structure.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!