0
我有一個從SageObject繼承的Sage類。根據Python文檔,Sage中默認的__hash__方法是什麼?
默認情況下,用戶定義的類有
__cmp__()
和__hash__()
方法;與他們, 所有對象比較不等於(除自己)和x.__hash__()
返回id(x)
。
但是,我的班級沒有這樣做,儘管它沒有實現自己的__hash__
方法。相反,它使用其字符串表示形式的散列值(由其__str__
方法返回的值)。這是Sage類設計的一部分,與普通Python類有所不同嗎? Sage爲了找到可接受的散列值可能會尋找哪些地方的層次結構?