2013-05-18 39 views
1

一個對象,我有我唯一的類我創建,我想控制一些flow..eg的輸出:如何改變打印行爲在Python

obj = MyObject() 
print obj 

所以不是呢,我想要什麼蟒蛇改變輸出。 我該怎麼做這樣的事情?

回答

6

更改__str__方法

class MyObject(object): 
    def __str__(self): 
     return 'foo' 


>>> print MyObject() 
foo 
+0

謝謝。完全適合我的解決方案只是一個小的修復:爲了使用替代__str__實現我不得不使用print str(obj),而不是print obj – buddy123

+0

@eran不,你不需要那個......當你不'使用它? – jamylak

+0

對不起。我的錯。它沒有像我第一次嘗試時那樣按預期工作,但現在似乎在'print'部分沒有任何修改就能正常工作 – buddy123

6

您可以覆蓋__str____repr__