2009-10-23 78 views
1

我想寫我自己__repr__一些類,我定義。我希望它與默認的<__main__.O object at 0x00D229D0>類似,除了其中的一些其他細節。我如何重現那<__main__.O object at 0x00D229D0>的事情?我自己的滾動__repr__

+1

您是否知道__repr__應該是一個評估可讀體現在哪裏?如果你想有用戶可讀的表達,你應該使用__str__ – freiksenet 2009-10-23 12:16:40

+5

以及是'eval'able或使用'這樣__name__'將給予在同一模塊中沒有定義的子類錯誤的結果尖括號中 – u0b34a0f6ae 2009-10-23 12:18:32

回答

3

您可以編寫自己的再版是這樣的:

class Test (object): 
    def __repr__(self): 
    t = type(self) 
    return "<Instance of %s.%s at %x>" % (t.__module__, t.__name__, id(self)) 
相關問題