Repolode
nbQA-dev

nbQA-dev/nbQA

Jupyter Notebook上でruff、isort、black、mypy、flake8などのPythonリンターやフォーマッターを直接実行できるCLIツール。

スター
1,208
フォーク
52
未解決の Issue
24
最終コミット
15 時間前

これは何?

nbQAを使うと、Jupyter Notebookをスクリプトに変換せずに、標準的なPythonコード品質ツールを実行できます。NotebookのコードセルはPythonコードとしてチェックされ、Markdownセルにはblacken-docsなどのツールを適用できます。black、isort、pyupgrade、ruff、flake8、mypy、pylint、yapf、autopep8、pydocstyle、doctestなど、幅広いツールに対応しています。

IPythonのマジックコマンドを処理し、既存の設定ファイルを尊重しながら、Notebookの出力を抑制するための末尾のセミコロンも保持します。Jupytextとペアになった.md形式のNotebookにも対応しています。コマンドラインから実行できるほか、pre-commitフックにも組み込めるため、コードベースのほかの部分と同じチェックをNotebookにも適用できます。

主な機能

  • 01Notebookのコードセルにblack、isort、ruff、flake8、mypy、pylintなどのツールを実行
  • 02blacken-docsなどのツールでMarkdownセルを処理
  • 03Notebookのコードを壊さずにIPythonのマジックコマンドを処理
  • 04既存のツール設定ファイルを尊重
  • 05Jupytext形式の.md Notebookに対応
  • 06pre-commitフックとの連携

ユースケース

  • リポジトリ内のデータサイエンス用Notebook全体に、lintとフォーマットの基準を適用する
  • CIパイプラインでNotebookに対してmypyによる型チェックを実行する
  • コミット前にNotebookのコードとMarkdownドキュメントを自動フォーマットする
  • 古いNotebookのコレクション全体でPython構文をアップグレードする

クイックスタート

  1. 1

    仮想環境に pip で nbQA をインストールします

    python -m pip install -U nbqa
  2. 2

    必要に応じて、サポートされているすべてのリンターとフォーマッターをインストールします

    python -m pip install -U "nbqa[toolchain]"
  3. 3

    たとえば black などのフォーマッターをノートブックに実行します

    nbqa black my_notebook.ipynb

使う前に知っておきたいこと

  • toolchain extra を使わない場合、各リンターまたはフォーマッターを個別にインストールする必要があります。

トピック

よくある質問

nbQA とは?
Jupyter Notebook上でruff、isort、black、mypy、flake8などのPythonリンターやフォーマッターを直接実行できるCLIツール。 nbQAを使うと、Jupyter Notebookをスクリプトに変換せずに、標準的なPythonコード品質ツールを実行できます。NotebookのコードセルはPythonコードとしてチェックされ、Markdownセルにはblacken-docsなどのツールを適用できます。black、isort、pyupgrade、ruff、flake8、mypy、pylint、yapf、autopep8、pydocstyle、doctestなど、幅広いツールに対応しています。
nbQA は無料で使えますか?ライセンスは?
nbQA は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
nbQA は今もメンテナンスされていますか?
活発にメンテナンス中。nbQA の最終コミットは 2026年11月6日 です。
nbQA は何に使えますか?
リポジトリ内のデータサイエンス用Notebook全体に、lintとフォーマットの基準を適用する CIパイプラインでNotebookに対してmypyによる型チェックを実行する コミット前にNotebookのコードとMarkdownドキュメントを自動フォーマットする 古いNotebookのコレクション全体でPython構文をアップグレードする
nbQA のインストール方法は?
仮想環境に pip で nbQA をインストールします: python -m pip install -U nbqa 必要に応じて、サポートされているすべてのリンターとフォーマッターをインストールします: python -m pip install -U "nbqa[toolchain]" たとえば black などのフォーマッターをノートブックに実行します: nbqa black my_notebook.ipynb
nbQA はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/nbQA-dev/nbQA

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト