Ich habe ein sehr, sehr großes Wörterbuch von Wörterbüchern. Oft sind die Werte gleich, und es scheint, dass es einen Weg geben sollte, die Größe zu reduzieren, indem man einen Bezug auf den gleichen Wörterbuchwert hat.Python Sparse Wörterbuch/wiederholte Werte
Momentan tue ich dies mit einer Zwei-Pass-Methode von "Hat Wert Synonym" gefolgt von Look-up-Wert von Synonym.
Aber im Idealfall wäre es großartig, einen Weg zu haben, dies in einem einzigen Schritt zu tun.
animals = {
'cat':{'legs':4,'eyes':2},
'dog':{'legs':4,'eyes':2},
'spider':{'legs':8,'eyes':6},
}
Ich könnte einen Wert „Säuger“, die so verwendet wird, dass ich sagte ‚Katze‘: Säugetier, aber was ich möchte in der Lage sein zu tun, ‚Hund‘: Tiere [ ‚Katze‘]
Weil als Referenz sollte es weniger Speicher nehmen, was das Ziel ist.
Ich überlege eine Klasse, damit umzugehen, aber ich kann nicht die erste Person sein, die denkt, dass wiederholte Werte in einem Wörterbuch irgendwie "zerquetscht" werden könnten, und würde es am meisten pythisch machen.
Dies ist hilfreich, zumindest darüber nachzudenken, wie ich das tun könnte. Ich hatte mit einem Wörterbuch der möglichen Werte begonnen, und ein Wörterbuch der Schlüssel mit einer Zeichenfolge, die auf das Diktat der möglichen Werte zeigt. Dies erfordert Dictionary Lookups, und das Speichern der Strings erodiert einen Teil des Speichervorteils. Ich werde ein wenig über CTypes lernen, kann es sein, dass ich eine Art Hybrid von meiner Lösung und von Ihnen machen kann. -Vielen Dank –