Python-Wörterbuchschlüssel. Komplexität "in"

Kurze Frage, um vor allem meine Neugier auf das Thema zu befriedigen.

Ich schreibe einige große Python-Programme mit einem SQlite-Datenbank-Backend und werde mich in Zukunft mit einer großen Anzahl von Datensätzen befassen, daher muss ich so viel wie möglich optimieren.

Für einige Funktionen suche ich nach Schlüsseln in einem Wörterbuch. Ich habe das Schlüsselwort "in" für das Prototyping verwendet und wollte diese Suchanfragen später erneut optimieren, da ich weiß, dass das Schlüsselwort "in" im Allgemeinen "O (n)" ist (da dies nur bedeutet, dass eine ganze Liste durchlaufen und verglichen wird jedes Element). Da ein Python-Diktat im Grunde genommen nur eine Hash-Map ist, ist der Python-Interpreter klug genug, um Folgendes zu interpretieren:

if(key in dict.keys()):
    ...code...

zu:

if(dict[key] != None):
    ...code...

Es ist im Grunde die gleiche Operation, aber die Oberseite wäre O (n) und die Unterseite wäre O (1).

Es ist einfach für mich, die unterste Version in meinem Code zu verwenden, aber dann war ich nur neugierig und dachte, ich würde fragen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage