Во-первых вопрос нужно оформлять по правилам ресурса. Код оборачивать в соответствующий тег.
По вопросу:
у вас словари никак не складываются. Вы вызываете проход по кортежу из этих словарей. Переменная
d принимает значение каждого следующего словаря на следующей итерации цикла for.
Все равно, что вывести в консоль значения переменных по очереди.
for i in (a, b, c):
print(i)
переменные a b c не складываются, а просто перебираются по очереди
А в вашем случае 3 словаря в один объединяет метод update(), который вызывается по очереди с каждым словарем в качестве параметра.