Skip to main content

目录注意

保留目录

  • lib/Lib - 这个目录是所有内置模块的入口目录,python项目不应该存在这个名称的目录

优秀的架构

  • Howdoi - Howdoi是代码搜寻工具,使用Python编写。
  • Flask - Flask是基于Werkzeug和Jinja2,使用Python的微框架。它能够快速启动,并且开发意图良好。
  • Diamond - Diamond是python的守护进程,它收集指标,并且将他们发布至Graphite或其它后端。它能够收集cpu,内存,网络,i/o,负载和硬盘指标。除此,它拥有实现自定义收集器的API,该API几乎能从任何资源中获取指标。
  • Werkzeug - Werkzeug起初只是一个WSGI应用多种工具的集成,现在它已经变成非常重要的WSGI实用模型。它包括强大的调试器,功能齐全的请求和响应对象,处理entity tags的HTTP工具,缓存控制标头,HTTP数据,cookie处理,文件上传,强大的URL路由系统和一些社区提供的插件模块。
  • Requests - Requests是Apache2许可的HTTP库,使用Python编写。
  • Tablib - Tablib是无格式的表格数据集库,使用Python编写。

示例模板

  • github -
{项目目录}/
|-- sample/
| |-- __init__.py
| |-- core.py
| `-- helpers.py
|-- docs/ # 参考文档
| |-- conf.py
| `-- index.rst
|-- tests/ # 包的集合和单元测试
| |-- conf.py
| `-- index.rst
|
|-- README.rst
|-- LICENSE # 许可证
|-- requirements.txt # 开发依赖
|-- setup.py # 打包和发布管理
`-- main.py
  • 自制
{项目目录}/
|-- bin/
| |-- foo
|
|-- foo/
| |-- tests/
| | |-- __init__.py
| | |-- test_main.py
| |
| |-- __init__.py
| |-- main.py
|
|-- docs/
| |-- conf.py
| |-- abc.rst
|
|-- setup.py
|-- requirements.txt
|-- README