关于 Python project template
面向 Python 开发者的项目模板,预置代码检查、格式化、测试、覆盖率和 CI 配置,并提供 devcontainer 与 pre-commit 钩子作为可调整的起点。
主要功能
- 01Ruff 代码检查
- 02Black 代码格式化
- 03Pre-commit 钩子
- 04Pytest 与覆盖率
- 05GitHub Actions 检查
- 06Python devcontainer
适用场景
- 01启动 Python 项目
- 02运行测试与覆盖率检查
- 03提交前执行代码规范检查
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Python 项目模板
这是一个适用于各类 Python 项目的模板仓库,包含以下开发工具:
ruff:识别许多错误和风格问题(flake8、isort、pyupgrade)black:自动格式化代码
这些检查通过 pre-commit 库作为提交前钩子运行。
模板包含用于测试的 pytest,以及用于测量覆盖率的 pytest-cov 插件。
每次提交拉取请求或合并到 main 时,都会使用 Github actions 运行所有检查和测试。
此仓库配置为使用 Python 3.11。要更改版本:
- 更改
.devcontainer/devcontainer.json中的image参数(预构建 Docker 镜像列表见 https://github.com/devcontainers/images/tree/main/src/python) - 更改
.precommit-config.yaml中的配置选项 - 更改
.github/workflows/python.yaml中的版本号
开发说明
使用 devcontainer
此仓库附带一个 devcontainer(Docker 化的 Python 环境)。如果你在 Codespaces 中打开它,devcontainer 应会自动初始化。
在本地安装 Dev Containers 扩展后,你可以在 VS Code 中打开它。
不使用 devcontainer
如果你无法或不想使用 devcontainer,请先创建一个虚拟环境:
python3 -m venv .venv
source .venv/bin/activate
然后安装开发工具和提交前钩子:
python3 -m pip install --user -r requirements-dev.txt
pre-commit install
添加代码和测试
此仓库初始包含一个非常简单的 main.py,以及针对它的测试文件 tests/main_test.py。
你需要将其替换为自己的代码,并且随着代码复杂度的增加,可能还需要添加其他文件。
准备好运行测试时,运行:
python3 -m pytest
文件说明
以下简要介绍此模板中的每个文件/文件夹:
.devcontainer:包含用于设置 devcontainer 的文件的文件夹devcontainer.json:配置 devcontainer 的文件,其中包含 VS Code 设置
.github:包含 Github 专用文件和文件夹的文件夹workflows:包含 Github actions 配置文件的文件夹python.yaml:配置运行工具和测试的 Github action 的文件
tests:包含 Python 测试的文件夹main_test.py:包含针对 main.py 的 pytest 风格测试的文件
.gitignore:描述 Git 不应跟踪哪些文件模式的文件.pre-commit-config.yaml:列出所有提交前钩子及其参数的文件main.py:程序的主 Python 文件(目前也是唯一的文件)pyproject.toml:配置大多数 Python 开发工具的文件README.md:你正在阅读的文件!requirements-dev.txt:列出开发所需所有 PyPi 软件包的文件requirements.txt:列出生产环境所需所有 PyPi 软件包的文件
如需更详细的说明,请阅读这篇博客文章。
🔎 发现问题或有改进建议?
请告诉我们并提交 issue,帮助我改进这个模板仓库!
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。