-
定义一个狗类和一个人类:
狗拥有属性:姓名、性别和品种 拥有方法:叫唤
人类拥有属性:姓名、年龄、狗 拥有方法:遛狗
class Human: def __init__(self, name = '小狗狗', age = 1): self.name = name self.age = age def method(self): pass return f'{self.name} {self.age} {self.name}正在遛狗' h1 = Human('小邓', 99) h2 = Human('小张', 21) print(h1.method(),h2.method()) class Dog: def __init__(self, name, sex ,dog_type): self.name = name self.sex = sex self.dog_type = dog_type def have_type(self): pass return f' {self.sex}\'岁的名字叫做\' {self.name}\'的\'{self.dog_type}正被叫唤' d1 = Dog('阿黄', '母的', '田园犬') print(d1.have_type())
-
定义一个矩形类,拥有属性:长、宽 拥有方法:求周长、求面积
class Orthogon: def __init__(self, a, b): self.a = a self.b = b def area(self): area = self.a * self.b return area def perimeter(self): perimeter = 2 * (self.a+ self.b) return perimeter o1 = Orthogon(1, 2) print(o1.area(), o1.perimeter())
-
定义一个二维点类,拥有属性:x坐标、y坐标 拥有方法:求当前点到另外一个点的距离
class TwoPonit: def __init__(self, x, y): self.x = x self.y = y def long(self, X = 0, Y = 0): long = ((X - self.x) ** 2 + (Y - self.y) ** 2) ** 0.5 return long p1 = TwoPonit(3,4) print(p1.long(-3,-4))
-
定义一个圆类,拥有属性:半径、圆心 拥有方法:求圆的周长和面积、判断当前圆和另一个圆是否外切
class Circle: pi = 3.14 def __init__(self, r, x, y): self.r = r self.x = x self.y = y def C_perimeter(self): return Circle.pi * self.r * 2 def get_area(self): return Circle.pi * self.r ** 2 def if_tangency(self, x1, y1, r1): if (self.r + r1) == ((x1 - self.x) ** 2 + (y1 - self.y) ** 2) ** 0.5: print('相切') elif (self.r + r1) > ((x1 - self.x) ** 2 + (y1 - self.y) ** 2) ** 0.5: print('相交') else: print('相离') o1 = Circle(5, 3, 4) print(o1.get_area()) print(o1.C_perimeter()) print(o1.if_tangency(-3, -4, 5))
-
定义一个线段类,拥有属性:起点和终点, 拥有方法:获取线段的长度
class Segment: def __init__(self, a, b): self.a = a self.b = b def get_l(self): return ((self.b - self.a) ** 2) ** 0.5 s1 = Segment(-1,99) print(s1.get_l())
day18-面向对象作业
最新推荐文章于 2024-04-27 01:44:23 发布