1、建议软件目录结构;
目录组织方式
Foo/
|-- bin/
| |-- foo
|
|-- foo/
| |-- tests/
| | |-- __init__.py | | |-- test_main.py | | | |-- __init__.py | |-- main.py | |-- docs/ | |-- conf.py | |-- abc.rst | |-- setup.py |-- requirements.txt |-- README
bin/
: 存放项目的一些可执行文件,当然你可以起名script/
之类的也行。foo/
: 存放项目的所有源代码。(1) 源代码中的所有模块、包都应该放在此目录。不要置于顶层目录。(2) 其子目录tests/
存放单元测试代码; (3) 程序的入口最好命名为main.py
。docs/
: 存放一些文档。setup.py
: 安装、部署、打包的脚本。requirements.txt
: 存放软件依赖的外部Python包列表。README
: 项目说明文件。
2、软件路径获取,及路径灵活处理;
BASE_DIR = os.path.dirname( os.path.dirname( os.path.abspath(__file__) ) )
# os.path.dirname : 获取上一级路径;
# os.path.abspath(__file__) : 获取本文件绝对路径
sys.path.append( BASE_DIR ) #添加路径到环境变量