Penso che la parte che ti sei perso sia la parola chiave "is" in realtà.
"è" riferimenti di test, o "identità" di un oggetto. {} è un dizionario vuoto, espressione "{} è {}" crea due dizionari vuoti. I loro valori sono "uguali" ma le loro identità non sono perché quei due dizionari risiedono in posizioni diverse nella memoria in quanto il dizionario è un oggetto creato dinamicamente.
"False is False" funziona perché è una costante, quindi entrambi i valori si riferiscono allo stesso blocco di memoria. Poiché non ha senso che Python allochi blocchi di memoria diversi ogni volta che vede "False" nel codice.