Я использую DeepDiff для сравнения двух вложенных объектов JSON в Python, но столкнулся с проблемой при сравнении словарей с более чем двумя ключами. Различия не разбиты на словарь_item_added, словарь_item_removed и Values_changed, как я ожидал. Вот пример:
Вот как я хочу, чтобы он вёл себя:
Я использую DeepDiff для сравнения двух вложенных объектов JSON в Python, но столкнулся с проблемой при сравнении словарей с более чем двумя ключами. Различия не разбиты на словарь_item_added, словарь_item_removed и Values_changed, как я ожидал. Вот пример: Вот как я хочу, чтобы он вёл себя: [code]expected = {"name":"Cake","image":{"width":200,"height":{"cm":200,"inch":15}}} actual = {"name":"Cake","image":{"width":250,"height":{"cm":290,"foot":10}}} ddiff = DeepDiff(expected, actual) print(ddiff, '\n\n') [/code] Выход: [code]{'dictionary_item_added': ["root['image']['height']['foot']"], 'dictionary_item_removed': ["root['image']['height']['inch']"], 'values_changed': {"root['image']['width']": {'new_value': 250, 'old_value': 200}, "root['image']['height']['cm']": {'new_value': 290, 'old_value': 200}}} [/code] Но когда я добавляю по одному ключу к фактическому и ожидаемому, получается следующее: [code]expected = {"name":"Cake","image":{"width":200,"height":{"cm":200,"inch":15,"mile":20}}} actual = {"name":"Cake","image":{"width":250,"height":{"cm":290,"foot":10,"yard":90}}} ddiff = DeepDiff(expected, actual) print(ddiff, '\n\n') [/code] Выход: [code]{'values_changed': {"root['image']['width']": {'new_value': 250, 'old_value': 200}, "root['image']['height']": {'new_value': {'cm': 290, 'foot': 10, 'yard': 90}, 'old_value': {'cm': 200, 'inch': 15, 'mile': 20}}}} [/code] Ожидаемый результат: [code]{'dictionary_item_added': ["root['image']['height']['foot']", "root['image']['height']['yard']"], 'dictionary_item_removed': ["root['image']['height']['inch']", "root['image']['height']['mile']"], 'values_changed': {"root['image']['width']": {'new_value': 250, 'old_value': 200}, "root['image']['height']['cm']": {'new_value': 290, 'old_value': 200}}} [/code] Как мне добиться желаемого результата?
Сейчас я использую Jetbrain PyCharm, где удаленная разработка работает следующим образом: файлы редактируются локально и развертываются на моем VPS во время сохранения, IDE использует удаленный интерпретатор Python для завершения кода.
Есть ли...
Я на стороне клиента. Клиент/сервер находится в одной компании, разные домены, один в один. Сервер отправляет данные в реальном времени и запрашивает информацию у клиента. Клиент обрабатывает данные, записывает статус обработки и отвечает на вопросы...
I am receiving and object from a JS calendar via JSInterop in Blazor. I have a C# interface and class that represents the JS object. A few properties are not being deserialized. In Particular the End Property.