我需要計算一個「哈希」,它允許我唯一標識一個對象,它是內容和父類。計算類和實例哈希
通過比較這些「散列」,我希望能夠判斷一個對象自上次掃描以來是否發生了變化。
我發現很多關於如何使一個哈希的對象實例,但沒有這麼多關於如何計算父類的哈希值。
重要的是要注意比較是在不同的執行過程中進行的。我這樣說是因爲我認爲比較對象的id()
,因爲對於不同的執行,對象的id /地址可能會不同。
我認爲訴諸檢查,但我擔心它可能不是非常有效的,也是我不是很確定,將如何,如果該對象的父類是從另一個類繼承工作。
如果我有訪問到該實例和類的代碼存儲的實際內存的原始數據,我可以計算的散列。
任何想法?
,如果你想知道如果自上次檢查改變你可以只生成你的對象的'__dict__'財產的哈希值。我認爲在這裏考慮其班級並不重要。 – lucasnadalutti
我不確定內建的['hash()'](https://docs.python.org/2/library/functions.html#hash)沒有涵蓋什麼情況?你可以擴展嗎? – TemporalWolf
@TemporalWolf如果你有'foo',一個'class Foo'的實例,做'foo.bar = 1','hash(foo)'會產生一個值,在你做完foo.bar後它將保持不變= 2'。 OP想要檢測這種變化。 – lucasnadalutti