DeepDiff 5.8.1 documentation!¶
DeepDiff Overview¶
The DeepDiff library includes the following modules:
- DeepDiff For Deep Difference of 2 objects. DeepDiff - It return the deep Difference of python objects. It can also be used to take the distance between objects. Deep Distance 
- DeepSearch Search for objects within other objects. DeepSearch 
- DeepHash Hash any object based on their content even if they are not “hashable” in Python’s eyes. DeepHash 
- Delta Delta of objects that can be applied to other objects. Imagine git commits but for structured data. Delta 
- Extract For extracting a path from an object Extract 
- Commandline Most of the above functionality is also available via the commandline module Command Line 
What is New¶
New In DeepDiff 5-8-1¶
DeepDiff 5-8-1 includes bug fixes: - Fixed test suite for 32bit systems
(https://github.com/seperman/deepdiff/issues/302) by Louis-Philippe
Véronneau - Fixed the issue when using ignore_order=True and
group_by simultaneously - Added the support for diffing object
properties (@property)
(https://github.com/seperman/deepdiff/issues/312) - Better support of
diffing private variables
New In DeepDiff 5-8-0¶
DeepDiff 5-8-0 includes bug fixes and improvements:
- Fixed the bug with delta randomly not producing the same results when ignore_order=True 
- Display detailed pretty when verbose 
- Allow ordered-set version 4.1.x 
- Removing extra logging when key is not found in DeepHash 
- Fixed error when comparing non-utf8 byte strings with ignore_order=True 
- Fixed Tests fail after 2022-05-14 
- Fixed TypeError is thrown when comparing bool and str 
Tutorials¶
Tutorials can be found on Zepworks blog
Installation¶
Install from PyPi:
pip install deepdiff
If you want to use DeepDiff from commandline:
pip install "deepdiff[cli]"
Read about DeepDiff optimizations at Optimizations
>>> from deepdiff import DeepDiff  # For Deep Difference of 2 objects
>>> from deepdiff import grep, DeepSearch  # For finding if item exists in an object
>>> from deepdiff import DeepHash  # For hashing objects based on their contents
>>> from deepdiff import Delta  # For creating delta of objects that can be applied later to other objects.
>>> from deepdiff import extract  # For extracting a path from an object
- Note: if you want to use DeepDiff via commandline, make sure to run::
- pip install “deepdiff[cli]” 
Then you can access the commands via:
- DeepDiff 
$ deep diff --help
- Delta 
$ deep patch --help
- grep 
$ deep grep --help
- extract 
$ deep extract --help
int, string, unicode, dictionary, list, tuple, set, frozenset, OrderedDict, NamedTuple, Numpy, custom objects and more!
Pycon¶
Pycon 2016 Talk A talk was given about the basics of how DeepDiff does what it does at Pycon 2016. Diff it to Dig it Pycon 2016 video
You can find more information about the contents of that Pycon talk here: http://zepworks.com/blog/diff-it-to-digg-it/