#我正在制作一個計算面積和周長或圓的程式。沒有錯誤,但答案不是我所期望的。
class Circle:
def __init__ (self):
self.radius = 0
def setRadius(self,radius):
self.radius = radius
def calcArea (self):
self.area = 3.14 * (self.radius ** 2)
def calcCircumference (self):
self.circumference = 2 * (3.14 * self.radius )
def getRadius (self):
return self.radius ()
def getArea (self):
return self.calcArea ()
def getCircumference (self):
self.calcCircumference ()
#我的執行
c1 = Circle ()
print("c1.Area",c1.getArea())
c1.setRadius(7)
print("c1.Area",c1.getArea())
#這是我執行時得到的答案。c1.區域無 c1.區域無
uj5u.com熱心網友回復:
calcArea并且calcCircumference應該回傳一些值,因為這些值在其他方法中用于計算結果。此外,這radius是一個屬性,不可呼叫。
更改類定義如下
class Circle:
def __init__(self):
self.radius = 0
def setRadius(self, radius):
self.radius = radius
def calcArea(self):
self.area = 3.14 * (self.radius ** 2)
return self.area
def calcCircumference(self):
self.circumference = 2 * (3.14 * self.radius)
return self.circumference
def getRadius(self):
return self.radius
def getArea(self):
return self.calcArea()
def getCircumference(self):
self.calcCircumference()
然后你會得到以下結果
c1 = Circle()
print("c1.Area", c1.getArea()) # c1.Area 0.0
c1.setRadius(7)
print("c1.Area", c1.getArea()) # c1.Area 153.86
uj5u.com熱心網友回復:
- 根據您的類定義,下面是您將如何列印該區域的代碼。
c1 = Circle()
c1.setRadius(7)
c1.getArea()
print("c1.Area", c1.area)
c1.Area 153.86
- 如果您希望僅通過呼叫回傳它
c1.getArea(),那么類代碼中的以下更改將有助于c1.getArea() and c1.getCircumference().
class Circle:
def __init__ (self):
self.radius = 0
def setRadius(self,radius):
self.radius = radius
def calcArea (self):
self.area = 3.14 * (self.radius ** 2)
return self.area
def calcCircumference(self):
self.circumference = 2 * (3.14 * self.radius )
return self.circumference
def getRadius (self):
return self.radius()
def getArea (self):
return self.calcArea()
def getCircumference (self):
return self.calcCircumference()
c1 = Circle ()
c1.setRadius(7)
print("c1.Area", c1.getArea())
print("c1.Area", c1.getCircumference())
# Below is the output
c1.Area 153.86
c1.Circumference 43.96
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/440090.html
上一篇:如何解決顫振類代碼中的這個錯誤
