-
定义一个狗类和一个人类:
狗拥有属性:姓名、性别和品种 拥有方法:叫唤
人类拥有属性:姓名、年龄、狗 拥有方法:遛狗
class Dogs: def __init__(self, name, gender, breed, method): self.name = name self.gender = gender self.breed = breed self.method = method class Person: def __init__(self, name, age, pet, method): self.name = name self.age = age self.pet = pet self.method = method
-
定义一个矩形类,拥有属性:长、宽 拥有方法:求周长、求面积
class Rectangle: """定义矩形""" def __init__(self, length, width): """长方形的长和宽""" self.length = length self.width = width def area(self): """求面积""" return self.length * self.width def perimeter(self): """求周长""" return (self.length + self.width) * 2
-
定义一个二维点类,拥有属性:x坐标、y坐标 拥有方法:求当前点到另外一个点的距离
class Rectangle: """定义二维点类""" def __init__(self, x1_point, x2_point, y1_point, y2_point): """x坐标,y坐标""" self.x_distance = x1_point - x2_point self.y_disdance = y1_point - y2_point def distance(self): """求距离""" return (self.x_distance ** 2 + self.y_disdance ** 2) ** 0.5 p1 = Rectangle(2, 3, 4, 5) print(p1.distance())
-
定义一个圆类,拥有属性:半径、圆心 拥有方法:求圆的周长和面积、判断当前圆和另一个圆是否外切
class Circle: """定义圆""" pi = 3.1415926535 def __init__(self, x1, y1, r): self.x1 = x1 self.y1 = y1 self.r = r def area(self): """求面积""" # 注意:在实现对象方法的功能的时候如果需要对象属性,由self来提供 return Circle.pi * self.r ** 2 def perimeter(self): """求周长""" return Circle.pi * self.r * 2 def excircle(self, x2, y2): """判断是否为外切圆""" if ((self.x1 - x2) ** 2 + (self.y1 - y2) ** 2) ** 0.5 == 2 * self.r: return '外切圆' else: return '不是外切圆'
-
定义一个线段类,拥有属性:起点和终点, 拥有方法:获取线段的长度
class Rectangle: """定义线段""" def __init__(self, x1_point, x2_point, y1_point, y2_point): """x坐标,y坐标""" self.x_distance = x1_point - x2_point self.y_disdance = y1_point - y2_point def distance(self): """求距离""" return (self.x_distance ** 2 + self.y_disdance ** 2) ** 0.5 p1 = Rectangle(2, 3, 4, 5) print(p1.distance())
day18-面向对象作业
最新推荐文章于 2022-11-30 21:29:07 发布