我試圖使用庫的輸出:Datadiff但diff的輸出,似乎並不一致。我正在分析兩個json,從它們中提取一些字典,然後比較這些字典。但是,對於該第一文件的輸出顯示的所有對象變化,而在第二個文件的輸出處於線,所以其不是被顯示相同的,但不是全部的對象改變了JSON的線保持在DIFF一個謎。我很困惑這種行爲,你能解釋我還是解決這個問題?下面是代碼:Datadiff的差異並不一致
+{u'origin': u'VIRTUAL', u'score': 1, u'type': u'PLACES', u'name': u'comune di Roma'},
+{u'origin': u'VIRTUAL', u'score': 1, u'type': u'PLACES', u'name': u'provincia di Roma'},
第二個文件DIFF:
-u'position': 1,:
u'score': 1,:
u'score': 1,:
u'score': 1,:
我想選擇所有
out = datadiff.diff(t[0].get("key"),t[1].get("key"))
if options.get("key2") != None:
out = scorecheck(out,options.get("key2"))
if checkdiff(str(out)):
f.write("Feelings:<br/>")
printdiff(f, str(out))
從第一個文件的差異輸出包含分數1的「對象」,而不僅僅是在json中表示分數1的行。所以對我來說第一個輸出是可以的,第二個是沒用的。
您能向我們展示第一個和第二個文件的示例嗎? – aIKid
Datadiff似乎只適用於Python結構,而不適用於文件。所以我不明白你的文件格式與它有什麼關係。你應該看看你的字典。 – Evert
文件是彼此非常不同的,我不得不使用兩個字典包含存儲在JSON以有序的方式的數據。這樣比較容易製作兩個文件的差異並讀取它。 – softwareplay