跳转到主要内容

DataDiff是一个库,用于提供Python数据结构的可读差异。

项目描述

DataDiff是一个库,用于提供Python数据结构的可读差异。它可以处理序列类型(列表、元组等)、集合和字典。

当适用时,字典和序列将递归地进行差异比较。

它对多行字符串有特殊处理,以典型的统一差异的形式显示它们。

提供了一些nose断言的替代方案。如果断言失败,将显示一个友好的数据差异,让您轻松定位根本差异。

datadiff在Python 2.6至Python 3上工作。

DataDiff项目主页: http://sourceforge.net/projects/datadiff/

示例

以下是一个示例

>>> from datadiff import diff
>>> a = dict(foo=1, bar=2, baz=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11])
>>> b = dict(foo=1, bar=4, baz=[0, 1, 2, 3, 4, 5, 6, 7, 8])
>>> print diff(a, b)
--- a
+++ b
{
-'bar': 2,
+'bar': 4,
 'baz': [
 @@ -5,11 +5,8 @@
  6,
  7,
  8,
 -9,
 -10,
 -11,
 ],
 'foo': 1,
}
>>>
>>> from datadiff.tools import assert_equal
>>> assert_equal([1, 2, 3], [1, 2, 5])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "datadiff/tools.py", line 29, in assert_equal
    raise AssertionError(msg)
AssertionError:
--- a
+++ b
[
@@ -0,2 +0,2 @@
 1,
 2,
-3,
+5,
]

许可协议

版权所有 Dave Brondsema

根据Apache License,版本2.0(“许可证”);除非遵守许可证,否则不得使用此文件。您可以在以下位置获得许可证副本:

https://apache.ac.cn/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则根据本许可证分发的软件按“现状”基础分发,不提供任何形式的明示或暗示保证。有关许可证的特定语言、权限和限制,请参阅许可证。

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

datadiff-2.2.0.tar.gz (13.5 kB 查看哈希值)

上传时间

构建分布

datadiff-2.2.0-py2.py3-none-any.whl (14.1 kB 查看哈希值)

上传时间 Python 2 Python 3