定义一个抽象类Shape,在抽象类Shape中定义求面积getArea()和周长getPerimeter()的抽象方法。 分别定义继承抽象类Shape的3个子类即Triangle、Rectang

class Shape:
    def __init__(self,areas=0,primeters=0):
       self.areas=areas
       self.Primeters=primeters
    def GetPrimeter(self):
        pass
    def GetArea(self):
       pass
class Triangle(Shape):
    def __init__(self,said1=0,said2=0,said3=0,areas=0,primeters=0):
        super().__init__(areas,primeters)
        self.said1=said1
        self.said2=said2
        self.said3=said3
    def GetPrimeter(self):
        self.Primeters=(self.said1+self.said2+self.said3)
    def GetArea(self):
        s = (self.said1 + self.said2 + self.said3) / 2
        self.areas = ((s * (s - self.said1)) * (s - self.said2) * (s - self.said3))**0.5
class Rectangle(Shape):
    def __init__(self,length=0,width=0,areas=0,primeters=0):
        super().__init__(areas,primeters)
        self.length=length
        self.width=width
    def GetPrimeter(self):
        self.Primeters=(self.length+self.width)*2
    def GetArea(self):
        self.areas=self.length*self.width
class Circle(Shape):
    def __init__(self,r=0,areas=0,primeters=0):
        super().__init__(areas,primeters)
        self.r=r
    def GetPrimeter(self):
        self.Primeters=2*3.14*self.r
    def GetArea(self):
        self.areas=3.14*self.r*self.r
a1=Triangle(3,4,5)
a1.GetPrimeter()
a1.GetArea()
print("三角形的周长为:",a1.Primeters)
print("三角形的面积为:",a1.areas)

a2=Rectangle(4,5)
a2.GetPrimeter()
a2.GetArea()
print("矩形的周长为:",a2.Primeters)
print("矩形的面积为:",a2.areas)

a3=Circle(4)
a3.GetPrimeter()
a3.GetArea()
print("圆的周长为:",a3.Primeters)
print("圆的面积为:",a3.areas)

  • 6
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值