Чтобы использовать пример, вам нужно создать следующий json-файл (test.json
):
{
"/apps/media/efel_data/efel_gui/results/305933/20180515094131/u_res": {
"step_700.0": {
"stimuli": [
{"delay": 620.0, "amp": 700.0, "duration": 1000.0, "totduration": 1300.0},
{"delay": 0.0, "amp": 0.0, "duration": 1300.0, "totduration": 1300.0}
]
}
}
}
и создать zip-файл, содержащий этот единственный файл (только для демонстрационных целей)
ls | zip -@ files.zip
Предположим, что оба файла находятся в папке temp
, запустите следующий код:
import zipfile
import json
z = zipfile.ZipFile("temp/files.zip")
with z.open('test.json') as f:
data = json.loads(f.read().decode('utf-8'))
with open('temp/test.json') as f:
expected = json.loads(f.read())
print(data.values())
print(expected.values())
print(data.values()==expected.values())
Теперь мне нужно сравнить значения из dict (какпервый ключ может отличаться в реальном использовании кода).Однако выходные данные кода (python 3.5.2) указывают, что идентичные значения не идентичны:
dict_values([{'step_700.0': {'stimuli': [{'totduration': 1300.0, 'amp': 700.0, 'delay': 620.0, 'duration': 1000.0}, {'totduration': 1300.0, 'amp': 0.0, 'delay': 0.0, 'duration': 1300.0}]}}])
dict_values([{'step_700.0': {'stimuli': [{'totduration': 1300.0, 'amp': 700.0, 'delay': 620.0, 'duration': 1000.0}, {'totduration': 1300.0, 'amp': 0.0, 'delay': 0.0, 'duration': 1300.0}]}}])
False
Любое объяснение, что происходит, и как я могу решить эту проблему?