目录结构规范 - Stackoverflow.com - project structure

建议的模式

假设你的项目名为foo, 我比较建议的最方便快捷目录结构这样就足够了:

Foo/
|-- bin/
|   |-- foo  (主程序目录,启动脚本,调用main)
|
|-- foo/
|   |-- tests/  
|   |   |-- __init__.py
|   |   |-- test_main.py
|   |
|   |-- __init__.py (有这个文件就叫包)
|   |-- main.py (程序主入口)
|
|-- docs/    
|   |-- conf.py
|   |-- abc.rst
|
|-- setup.py  
|-- requirements.txt 
|-- README

简要解释一下:

  1. bin/:      存放项目的一些可执行文件,当然你可以起名script/之类的也行。
  2. foo/: 存放项目的所有源代码。(1) 源代码中的所有模块、包都应该放在此目录。不要置于顶层目录。(2) 其子目录tests/存放单元测试代码; (3) 程序的入口最好命名为main.py。
  3. docs/: 存放一些文档。
  4. setup.py: 安装、部署、打包的脚本。
  5. requirements.txt: 存放软件依赖的外部Python包列表。
  6. README: 项目说明文件。