画像をピクセル単位で比較して差分画像を生成する、高速なSIMD最適化対応CLIツール兼Node.jsライブラリ。
qlustered/deepdiff
ネストしたオブジェクトの詳細比較や検索、内容に基づくハッシュ生成、差分の保存・適用ができるPythonライブラリ。
- スター
- 2,537
- フォーク
- 296
- 未解決の Issue
- 125
- 最終コミット
- 先月
これは何?
DeepDiffは、辞書、リスト、集合、文字列、任意のオブジェクトなど、ネストしたデータ構造の差分を検出するPythonライブラリです。追加・削除・変更された内容と、それぞれの変更箇所へのパスを報告するため、2つのオブジェクトがどこで異なるかを正確に確認できます。
差分検出に加えて、ネストしたオブジェクト内の値を探すDeepSearch、オブジェクトの内容に基づいてハッシュを生成するDeepHash、差分を保存して別のオブジェクトに適用し、結果を再構築するDeltaも含まれています。また、パスを指定してネストしたオブジェクトから項目を読み取るExtractと、オプションのextraを通じてインストールできるコマンドラインインターフェースも提供します。
Python 3.10以降とPyPy3に対応しています。PyYAML、tomli、orjson、pydanticなどのオプション依存関係により、対応フォーマットを増やしたり、シリアライズを高速化したりできます。最近のバージョンでは、差分検出のマルチプロセス処理と、exclude_pathsおよびinclude_pathsで使えるワイルドカードパターンが追加されました。
主な機能
- 01ネストしたデータの追加・削除・変更と、そのパスを報告します。
- 02DeepSearchで任意のネストしたPythonオブジェクト内の値を検索します。
- 03DeepHashで任意のPythonオブジェクトの内容に基づくハッシュを生成します。
- 04差分をDeltaオブジェクトとして保存し、適用してオブジェクトを再構築します。
- 05exclude_pathsとinclude_pathsでワイルドカードパターンを使用できます。
ユースケース
- 複雑なAPIレスポンスや設定オブジェクトが一致することを確認するテストを書く。
- ネストしたJSONデータやYAMLデータのバージョン間の変更を検出する。
- 構造化された状態への増分更新を追跡し、再適用する。
- 内容ハッシュを使ってオブジェクトを重複排除する。
クイックスタート
- 1
DeepDiffをPyPIからインストールする
pip install deepdiff - 2
必要に応じてコマンドライン用の追加機能をインストールする
pip install "deepdiff[cli]"
使う前に知っておきたいこと
- メタデータではライセンスがNOASSERTIONと記載されているため、使用前にライセンス条件を確認してください。
- READMEには、このプロジェクトは現在Qlusterの一部であると記載されており、Qlusterの宣伝文も含まれています。
トピック
よくある質問
- deepdiff とは?
- ネストしたオブジェクトの詳細比較や検索、内容に基づくハッシュ生成、差分の保存・適用ができるPythonライブラリ。 DeepDiffは、辞書、リスト、集合、文字列、任意のオブジェクトなど、ネストしたデータ構造の差分を検出するPythonライブラリです。追加・削除・変更された内容と、それぞれの変更箇所へのパスを報告するため、2つのオブジェクトがどこで異なるかを正確に確認できます。
- deepdiff は無料で使えますか?ライセンスは?
- deepdiff は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- deepdiff は今もメンテナンスされていますか?
- 半年以内に更新あり。deepdiff の最終コミットは 2026年9月18日 です。
- deepdiff は何に使えますか?
- 複雑なAPIレスポンスや設定オブジェクトが一致することを確認するテストを書く。 ネストしたJSONデータやYAMLデータのバージョン間の変更を検出する。 構造化された状態への増分更新を追跡し、再適用する。 内容ハッシュを使ってオブジェクトを重複排除する。
- deepdiff のインストール方法は?
- DeepDiffをPyPIからインストールする: pip install deepdiff 必要に応じてコマンドライン用の追加機能をインストールする: pip install "deepdiff[cli]"
- deepdiff はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/qlustered/deepdiff
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
WeChatの受信ファイルフォルダにある重複ファイルを検出し、システムのゴミ箱に移動して安全に削除できるデスクトップツールです。
エージェントの計画、Markdown、HTML、コード差分に注釈を付け、フィードバックを返せるローカルのブラウザベースレビュー環境。
Gitのコミット差分をレビューする、GitHub風のローカルWebビューアを起動するCLIツール。コメントはAI向けプロンプトとしてコピーできます。
RustとGPUIフレームワークで構築された、Linux、Windows、macOS向けの高速でローカルファーストなデスクトップGit GUI。
単一のAPIでChromium、Firefox、WebKitを自動操作できるPythonライブラリ。同期版と非同期版を提供します。