Как сравнить два словаря исключая (но не удаляя) один из ключей в Python
Функция compare_robots
, принимает два словаря с характеристиками роботов и возвращает True, только если все характеристики обоих роботов совпадают (порядок свойств не важен, только ключи и значения).
Примечание: у каждого робота есть ключ - уникальный серийный номер (не учитываем при сравнении)
Написал функцию, но указал удаление ключей, не пропускает так как автотесты требуют что бы ключи не учитывались, но не удалялись.
def compare_robots(robot1: dict, robot2: dict) -> bool:
if robot1.get("serial_no"):
del robot1["serial_no"]
if robot2.get("serial_no"):
del robot2["serial_no"]
if robot1 == robot2:
return True
else:
return False
Источник: Stack Overflow на русском