В данном списке:
unmatched_items_array = [{'c': 45}, {'c': 35}, {'d': 5}, {'a': 3.2}, {'a': 3}]
Найдите все пары ключей и распечатайте, и, если не найдено пар для данного словаря, распечатайте этот словарь.
Что мне удалось написатьпока что вроде работает, но он продолжает тестировать некоторые пункты списка, даже если они уже были протестированы.Не уверен, как это исправить.
for i in range(len(unmatched_items_array)):
for j in range(i + 1, len(unmatched_items_array)):
# when keys are the same print matching dictionary pairs
if unmatched_items_array[i].keys() == unmatched_items_array[j].keys():
print(unmatched_items_array[i], unmatched_items_array[j])
break
# when no matching pairs print currently processed dictionary
print(unmatched_items_array[i])
Вывод:
{'c': 45} {'c': 35}
{'c': 45}
{'c': 35}
{'d': 5}
{'a': 3.2} {'a': 3}
{'a': 3.2}
{'a': 3}
Какой вывод должен быть:
{'c': 45} {'c': 35}
{'d': 5}
{'a': 3.2} {'a': 3}
Что я здесь не так делаю?