mcpField
D
Devcontainer Python

Devcontainer Python

本地服务
github.com/tomohiroJin地图与出行080 周前更新

关于 Devcontainer Python

Devcontainer Python 是基于 Devcontainer 的 Python 项目环境模板,适合希望快速搭建一致、隔离开发环境的开发者。模板包含示例代码、测试,以及常用代码质量工具。

主要功能

  1. 01Python 3.11 开发环境
  2. 02预装 pytest、flake8 和 black
  3. 03基于 Docker 的隔离工作区
  4. 04Python 语法与设计模式示例
  5. 05附带测试用例

适用场景

  1. 01在一致的环境中启动 Python 项目
  2. 02学习和查阅 Python 语法与设计模式
  3. 03运行测试并检查或格式化代码

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

来自项目 README

Devcontainer Python

このリポジトリは、Python プロジェクトの開発環境を簡単に構築できる Devcontainer を利用したテンプレートです。必要なツールや依存関係があらかじめ設定されており、一貫した開発環境を提供します。

特徴

  • Python 3.11 を使用
  • あらかじめインストールされているツール:
    • pytest(テストフレームワーク)
    • flake8(コードリントツール)
    • black(コードフォーマッタ)
  • Devcontainer による一貫性のある開発環境
  • Docker ベースの隔離された環境で、設定の一貫性を保証
  • サンプルコードとリファレンス例の追加
    • Python の基本的な文法やデザインパターンをカバー
    • 詳細なテストケースを含む実装

はじめに

以下の手順で、この開発環境を利用できます。

  1. このリポジトリをクローンします:

    git clone https://github.com/tomohiroJin/devcontainer-python.git -b feature/add-reference
    cd devcontainer-python
    
  2. VS Code でプロジェクトを開きます:

    code .
    
  3. Devcontainer でプロジェクトを再オープンするように求められたら、指示に従って再オープンします。

  4. セットアップを確認するためにテストを実行します:

    pytest
    

リファレンス

このプロジェクトには、基本的な Python の文法と主要なデザインパターンを学習・参照できるサンプルが含まれています。

使用方法

1. テストの実行

pytestを使用してプロジェクトのテストを実行します。以下のように、さまざまな方法でテストを実行できます。

すべてのテストを実行
pytest
特定のテストファイルを実行

特定のテストファイルのみを実行したい場合は、ファイルパスを指定します。

pytest tests/reference/basic/test_conditions.py
テストの進捗と詳細を確認

-v(verbose)オプションを使用して、各テストの詳細を確認できます。

pytest -v
特定のテストケースを実行

-kオプションを使って、名前に特定の文字列を含むテストケースを実行します。

pytest -k "fizzbuzz"
テスト中の出力を確認

テスト中のprintやログの出力を確認したい場合、-sオプションを使用します。

pytest -s
テスト結果をリポート形式で保存

pytest-htmlプラグインを使用して、HTML 形式のレポートを生成します。

pip install pytest-html
pytest --html=report.html

2. コード品質チェック

flake8を使用してコードの品質を確認します。以下のオプションを組み合わせることで、詳細な結果を得ることができます。

基本的なコードチェック

プロジェクト全体をチェックします。

flake8
最大行長を指定

Black と統一するために、最大行長を 88 文字に設定します(設定ファイルに記述しても OK)。

flake8 --max-line-length=88
特定のルールを無視

Black と矛盾するルール(例: E203, W503)を無視して実行します。

flake8 --ignore=E203,W503
特定のファイルのみをチェック

特定のファイルやディレクトリだけをチェックします。

flake8 src/fizzbuzz/fizzbuzz.py
コード内の TODO や FIXME を確認

--radarや--todoプラグインを使用して、TODO コメントを含む箇所を一覧表示します(プラグインのインストールが必要)。

pip install flake8-todo
flake8 --todo

3. コードのフォーマット

blackを使用してコードを自動整形します。

プロジェクト全体をフォーマット

プロジェクト内のすべての Python ファイルをフォーマットします。

black .
変更内容をプレビュー

--checkオプションを使用すると、フォーマットの提案内容だけを確認できます(実際の変更は行われません)。

black --check .
特定のファイルやディレクトリだけをフォーマット

特定の範囲だけを対象にする場合、パスを指定します。

black src/fizzbuzz/fizzbuzz.py

カスタマイズ:

  • .devcontainer/devcontainer.json ファイルを編集することで、開発環境をカスタマイズできます。
  • 例えば、Python のバージョン変更や追加ツールのインストールが可能です。

ライセンス

このプロジェクトは MIT ライセンスの下で提供されています。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。