{ 'key': 'val1', 'key': 'val2', 'key': 'val3' }
само по себе тождественно { 'key': 'val3' }
Потому как интерпретатор проходит по всему выражению и по ключу видит указатель на область памяти только с 'val3'
Как оказалось, исходное выражение является вполне корректным, но не оптимальным.