day17-面向对象作业

it2025-04-01  21

定义一个矩形类,拥有属性:长、宽 拥有方法:求周长、求面积

class Rectangle: def __init__(self, length, width): self.length = length self.width = width def perimeter(self): result = (self.width+self.length)*2 print("该矩形的周长为:%s" % result) def area(self): result = self.length*self.width print("该矩形的面积为:%s" % result)

定义一个二维点类,拥有属性:x坐标、y坐标 拥有方法:求当前点到另外一个点的距离

class Point: def __init__(self, x=0, y=0): self.x = x self.y = y def position(self): print("x:%s y:%s" % (self.x, self.y)) def distance1(self, x2=0, y2=0): result = ((self.x - x2)**2 + (self.y - y2)**2)**0.5 print("距离为:%s" % result) def distance2(self, other): result = ((self.x-other.x)**2 + (self.y-other.y)**2)**0.5 print("距离为:%s" % result)

定义一个圆类,拥有属性:半径、圆心 拥有方法:求圆的周长和面积、判断当前圆和另一个圆是否外切

class Circle: def __init__(self, x, y, radius): self.x = x self.y = y self.radius = radius def perimeter(self): result = self.radius*2*3.14 print("该圆的周长为:%s" % result) def area(self): result = self.radius**2*3.14 print("该矩形的面积为:%s" % result) def exotomy(self, other): distance = ((self.x-other.x)**2 + (self.y-other.y)**2)**0.5 if distance == self.radius: print("两圆相切") else: print("两圆没有相切")

定义一个线段类,拥有属性:起点和终点, 拥有方法:获取线段的长度

class Line: def __init__(self, x1, y1, x2, y2): self.x1 = x1 self.y1 = y1 self.x2 = x2 self.y2 = y2 def length(self): result = ((self.x1 - self.x2) ** 2 + (self.y1 - self.y2) ** 2) ** 0.5 print("线段长度为:%s" % result)

定义一个狗类和一个人类:

狗拥有属性:姓名、性别和品种 拥有方法:叫唤

人类拥有属性:姓名、年龄、狗 拥有方法:遛狗

class Dog: def __init__(self, name, kind, sex): self.name = name self.sex = sex self.kind = kind def bark(self): print("%s 是条狗,会咆哮哦!" % self.name) class Person: def __init__(self, name, age, dog): self.name = name self.age = age self.dog = dog.name def walk_dog(self): print("%s 岁的%s 带着狗狗%s 去逛街啦!" % (self.age, self.name, self.dog))
最新回复(0)