-
定义一个矩形类,拥有属性:长、宽 拥有方法:求周长、求面积
class Rectangle: def __init__(self, length, width): self.length = length self.width = width def Perimeter(self): return (self.width + self.length) * 2 def area(self): return self.width * self.length r1 = Rectangle(10, 20) print(r1.Perimeter()) print(r1.area())
-
定义一个二维点类,拥有属性:x坐标、y坐标 拥有方法:求当前点到另外一个点的距离
class TwoPoint: def __init__(self): self.x1 = int(input('请输入点x1的值:')) self.y1 = int(input('请输入点y1的值:')) self.x2 = int(input('请输入点x2的值:')) self.y2 = int(input('请输入点y2的值:')) def distance(self): return ((self.x1 - self.x2) ** 2 + (self.y1 - self.y2) ** 2) ** 0.5 t1 = TwoPoint() r = t1.distance() print(r)
-
定义一个圆类,拥有属性:半径、圆心 拥有方法:求圆的周长和面积、判断当前圆和另一个圆是否外切
class Circle: pi = 3.1415926 def __init__(self, r1=0, r2=0, x1=0, y1=0, x2=0, y2=0): self.r1 = r1 self.r2 = r2 self.x1 = x1 self.y1 = y1 self.x2 = x2 self.y2 = y2 # 面积 def area(self): return Circle.pi * self.r1 ** 2 # 周长 def circumference(self): return Circle.pi * self.r1 * 2 # 外切判断 def exterior_contact(self): flag = False d = ((self.x1 - self.x2) ** 2 + (self.y1 - self.y2) ** 2) ** 0.5 r_total = self.r1 + self.r2 if d == r_total: flag = True return flag c1 = Circle() c1.r1 = 5 c1.r2 = 0 c1.x1 = 3 c1.y1 = 4 c1.x2 = 6 c1.y2 = 8 print(c1.circumference()) # 求周长 print(c1.area()) # 求面积 print(c1.exterior_contact()) # 判断是否外切 class Circle: pi = 3.14 def __init__(self, r1=0, r2=0, x1=0, y1=0, x2=0, y2=0): self.r1 = r1 self.r2 = r2 self.center1 = (x1, y1) self.center2 = (x2, y2) # 面积 def area(self): return Circle.pi * self.r1 ** 2 # 周长 def circumference(self): return Circle.pi * self.r1 * 2 # 外切判断 def exterior_contact(self): flag = False d = ((self.center1[0] - self.center2[0]) ** 2 + (self.center1[1] - self.center2[1]) ** 2) ** 0.5 r_total = self.r1 + self.r2 if d == r_total: flag = True return flag c1 = Circle() c1.r1 = 5 c1.r2 = 0 c1.x1 = 3 c1.y1 = 4 c1.x2 = 0 c1.y2 = 0 print(f'半径为r1的面积是{c1.area()}') # 求面积 print(f'半径为r1的周长是是{c1.circumference()}') # 求周长 print(f'是否外切:{c1.exterior_contact()}') # 判断是否外切
-
定义一个线段类,拥有属性:起点和终点, 拥有方法:获取线段的长度
class Lines: def __init__(self): self.origin = (0, 0) self.destination = (3, 4) def line_len(self): return ((self.destination[0] - self.origin[0]) ** 2 + (self.destination[1] - self.origin[1]) ** 2) ** 0.5 l1 = Lines() print(l1.line_len())
day15-面向对象作业2
最新推荐文章于 2024-07-11 19:45:38 发布