.. DeepDiff documentation master file, created by
sphinx-quickstart on Mon Jul 20 06:06:44 2015.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
DeepDiff 5.8.2 documentation!
=============================
*****************
DeepDiff Overview
*****************
The DeepDiff library includes the following modules:
- **DeepDiff** For Deep Difference of 2 objects. :doc:`/diff`
It return the deep Difference of python objects. It can also be used to take the distance between objects. :doc:`/deep_distance`
- **DeepSearch** Search for objects within other objects. :doc:`/dsearch`
- **DeepHash** Hash any object based on their content even if they are not "hashable" in Python's eyes. :doc:`/deephash`
- **Delta** Delta of objects that can be applied to other objects. Imagine git commits but for structured data. :doc:`/delta`
- **Extract** For extracting a path from an object :doc:`/extract`
- **Commandline** Most of the above functionality is also available via the commandline module :doc:`/commandline`
***********
What is New
***********
DeepDiff 5-8-2
--------------
Fixing dependency for Py3.6
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
.. _Louis-Philippe VĂ©ronneau: https://github.com/baldurmen
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 :ref:`optimizations_label`
Importing
~~~~~~~~~
.. code:: python
>>> 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
.. code:: bash
$ deep diff --help
- Delta
.. code:: bash
$ deep patch --help
- grep
.. code:: bash
$ deep grep --help
- extract
.. code:: bash
$ deep extract --help
Supported data types
~~~~~~~~~~~~~~~~~~~~
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/
References
==========
.. toctree::
:maxdepth: 4
diff
dsearch
deephash
delta
extract
commandline
changelog
authors
faq
support
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`