Markdown、reStructuredText、LaTeXのドキュメント内にあるPythonコードブロックにBlackを実行するコマンドラインツール。
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
仮想環境に pip で nbQA をインストールします
python -m pip install -U nbqa - 2
必要に応じて、サポートされているすべてのリンターとフォーマッターをインストールします
python -m pip install -U "nbqa[toolchain]" - 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 の数値は毎日更新されます。
関連プロジェクト
厳選したスペルミス辞書を使い、ソースコードやテキストファイルのよくある誤字を検出・修正するCLIツールです。
プロジェクトごとに設定できる200以上のルールで、Swiftのスタイルや規約をチェックするリンターです。
バグや脆弱性、保守性の問題をスキャンし、CIパイプラインでQuality Gatesを適用するセルフホスト型のコード品質・セキュリティプラットフォーム。
Pythonプロジェクト内の未使用コードや到達不能コードを検出する静的解析ツール。
PHP_CodeSniffer用のルールセット。別のPHPバージョンでは動作しない機能や関数を使っているコードを検出します。