Ja, das Diktat wird im Prozessspeicher gespeichert. Wenn es also so groß wird, dass der Platz im System-RAM nicht mehr ausreicht, können Sie mit einer massiven Verlangsamung rechnen, da das System beginnt, Speicher von und auf die Festplatte auszulagern.
Andere haben gesagt, dass ein paar Millionen Artikel kein Problem darstellen sollten; ich bin mir da nicht so sicher. Der Overhead für das Diktat selbst (ohne den Speicherbedarf für die Schlüssel und Werte zu berücksichtigen) ist erheblich. Für Python 2.6 oder später, sys.getsizeof gibt einige nützliche Informationen darüber, wie viel RAM verschiedene Python-Strukturen benötigen. Einige schnelle Ergebnisse von Python 2.6 auf einem 64-Bit OS X Rechner:
>>> from sys import getsizeof
>>> getsizeof(dict((n, 0) for n in range(5462)))/5462.
144.03368729403149
>>> getsizeof(dict((n, 0) for n in range(5461)))/5461.
36.053470060428495
Der Diktat-Overhead schwankt also auf diesem Rechner zwischen 36 Byte pro Eintrag und 144 Byte pro Eintrag (der genaue Wert hängt davon ab, wie voll die interne Hash-Tabelle des Wörterbuchs ist; hier ist 5461 = 2**14//3 einer der Schwellenwerte, ab dem die interne Hash-Tabelle vergrößert wird). Und das ist, bevor man den Overhead für die Diktat-Elemente selbst hinzurechnet; wenn es sich um kurze Zeichenketten handelt (z.B. 6 Zeichen oder weniger), dann sind das immer noch >= 80 Bytes pro Element (möglicherweise weniger, wenn viele verschiedene Schlüssel denselben Wert haben).
Es wäre also nicht nötig dass viele Millionen Diktate, die den Arbeitsspeicher eines typischen Rechners auslasten.