组织Python模块的最佳实践是什么?
这是一个示例项目,展示了一种非常好的项目结构方式:https://github.com/kennethreitz/samplemod. 该项目关于创建“sample”模块。目录结构如下所示
README.rst LICENSE setup.py requirements.txt sample/__init__.py sample/core.py sample/helpers.py docs/conf.py docs/index.rst tests/test_basic.py tests/test_advanced.py
README.rst文件:此文件用于简要描述模块、如何设置、如何使用等。
LICENSE:包含许可证文本和任何版权声明。
setup.py:它是Python对多平台安装程序和make文件的答案。如果您熟悉命令行安装,则make && make install转换为python setup.py build && python setup.py install。因此,它用于在用户机器上构建您的项目。
requirements.txt:Pip需求文件应指定参与项目所需的依赖项:测试、构建和生成文档。如果您的项目没有开发依赖项,或者您更喜欢通过setup.py设置开发环境,则此文件是不必要的。
docs/:此目录包含项目的文档。
tests/:所有测试都应位于此目录中。最初,您将只有一个测试文件。随着测试数量的增长,您可以像模块目录一样组织测试。
sample/:此目录包含您的实际模块代码。如果您的模块仅包含单个文件,您可以将其直接放在存储库的根目录中,例如sample.py。您的库不应位于不明确的src或python子目录中。如果要将此模块放在包中,则它将包含一个__init__.py文件。
广告