2014-11-08 65 views
0

請幫助完成此操作。我卡住了,似乎無法得到它。下面是我得到的,代碼下面是輸出結果。Python幫助:OOP矩形

def main(): 
print ("Rectangle a:") 
a = Rectangle(5, 7) 
print ("area:  {}".format(a.area)) 
print ("perimeter: {}".format(a.perimeter)) 

print ("") 
print ("Rectangle b:") 
b = Rectangle() 
b.width = 10 
b.height = 20 
print (b.getStats()) 

期望輸出

當矩形類已被正確創建,輸出應如下所示:

Rectangle a: 
area:  35 
perimeter: 24 
Rectangle b: 
width:  10 
height: 20 
area:  200 
perimeter: 60 

這是我從我所知道的完成。我錯過了家庭緊急情況的講座,不知道如何完成它。

class Rectangle: 
    def __init__ (self, H=0, W=0): 
     self.width = W 
     self.height = H 

@property 
    def area (self): 
     return self.width * self.height 

def main(): 
    print ("Rectangle a:") 
    a = Rectangle (5, 7) 
    #print ("area: {}".format(a.area)) 
    #print ("perimeter: {}".format(a.perimeter)) 
    print ("") 
    print ("Rectangle b:") 
    b = Rectangle() 
    b.width = 10 
    b.height = 20 
    #print (b.area) 
    #print (b.getStats()) 

main() 
+0

你在哪裏做了什麼?我不會爲你做你的功課。 – 2014-11-08 20:44:53

+0

生病發布了一個答案,我迄今爲止所做的以及IM卡在哪裏。 – 2014-11-08 20:49:15

+0

不要發表這個答案,而是在你的問題中添加和解釋。 – 2014-11-08 20:49:44

回答

1

首先,你應該推出一份報紙,並且敲打老師的建議,使用名爲main()的函數。 Python已經附帶__main__,歡迎您使用。

至於你正在進行的問題,我冒昧地重新修改你的代碼,你應該能夠在成功的道路上走在前面。

class Rectangle: 
    def __init__ (self, H=0, W=0): 
     self.width = W 
     self.height = H 

    @property 
    def area (self): 
      return self.width * self.height 

if __name__ == "__main__": 
    a = Rectangle (5, 7) 
    print ("Rectangle a.w: %s a.h: %s" % (a.width, a.height)) 
    b = Rectangle() 
    b.width = 10 
    b.height = 20 
    print ("Rectangle b.w: %s b.h: %s" % (b.width, b.height))