我正在實例化一個類,並且只是想使用print來轉儲對象。當我這樣做時,我似乎得到某種對象ID。我不能只發出一個「print ObjectName」,結果只是對象的屬性?下面是我在做什麼的例子:當我運行此我得到以下結果使用print輸出Python中的對象
class Car:
def __init__(self, color, make, model):
self.color = color
self.make = make
self.model = model
def getAll():
return (self.color, self.make, self.model)
mycar = Car("white","Honda","Civic")
print mycar
:
<__main__.Car instance at 0x2b650357be60>
我希望看到的顏色,牌子,型號值也是如此。我知道,如果我通過單獨打印出來:
print mycar.color,mycar.make,mycar.model
它輸出:
white Honda Civic
正如我所期望的。爲什麼「打印mycar」輸出一個實例id而不是屬性值?
一記叫這個問題問的爲什麼Python,默認情況下,打印屬性值:如果其中一個屬性更復雜一些,比如連接到數據庫,會發生什麼?它會如何打印出來?此外,如果您的汽車有120種不同的屬性(或者更好,就像汽車功能字典),會發生什麼情況。全部功能列表是否應該打印? Python中的默認值雖然通常沒有幫助,但是相當安全,並且不會假設您的類有任何問題。 –