Python 如何排除“;类型“U变更”;完全从深度差异,因为我只关心价值的变化?
输出:Python 如何排除“;类型“U变更”;完全从深度差异,因为我只关心价值的变化?,python,python-3.x,dictionary,deep-diff,Python,Python 3.x,Dictionary,Deep Diff,输出: from deepdiff import DeepDiff t1 = {1:1, 2:2, 3:3} t2 = {1:1, 2:"2", 3:3} print(DeepDiff(t1, t2), indent=2) {'type_changes':{'root[2]:{'new_type':, “新值”:“2”, “旧类型”:, “旧值”:2 }}} 我只希望输出中的值更改,不包括“类型更改”。 我必须比较嵌套字典,我不关心类型。来自DeepDiff的文档: 忽略组中的类型- 忽
from deepdiff import DeepDiff
t1 = {1:1, 2:2, 3:3}
t2 = {1:1, 2:"2", 3:3}
print(DeepDiff(t1, t2), indent=2)
{'type_changes':{'root[2]:{'new_type':,
“新值”:“2”,
“旧类型”:,
“旧值”:2
}}}
我只希望输出中的值更改,不包括“类型更改”。
我必须比较嵌套字典,我不关心类型。来自DeepDiff的文档: 忽略组中的类型- 忽略类型组成员之间的类型更改。例如,如果 您想忽略浮点和小数等之间的类型更改。注意 这是一个更细粒度的特性 因此,在您的例子中,当旧的_类型是整数而新的_类型是字符串时-
{ 'type_changes': { 'root[2]': { 'new_type': <class 'str'>,
'new_value': '2',
'old_type': <class 'int'>,
'old_value': 2
}}}
输出将是-
print(DeepDiff(t1, t2), indent=2, ignore_type_in_groups=[(int, str)])
另一个可用选项是将DeepDiff对象转换为Dictionary/JSON,并根据需要对其进行控制
{}
来自DeepDiff的文件: 忽略组中的类型- 忽略类型组成员之间的类型更改。例如,如果 您想忽略浮点和小数等之间的类型更改。注意 这是一个更细粒度的特性 因此,在您的例子中,当旧的_类型是整数而新的_类型是字符串时-
{ 'type_changes': { 'root[2]': { 'new_type': <class 'str'>,
'new_value': '2',
'old_type': <class 'int'>,
'old_value': 2
}}}
输出将是-
print(DeepDiff(t1, t2), indent=2, ignore_type_in_groups=[(int, str)])
另一个可用选项是将DeepDiff对象转换为Dictionary/JSON,并根据需要对其进行控制
{}