-
定义一个狗类和一个人类:
狗拥有属性:姓名、性别和品种 拥有方法:叫唤
人类拥有属性:姓名、年龄、狗 拥有方法:遛狗
class Dog: '''狗''' def __init__(self, name, age, varieties): self.name = name self.age = age self.varieties = varieties def func1(self): print('狗叫') def __repr__(self): return str(self.__dict__) dog = Dog('黑蛋', '5', '二哈') print(dog) dog.func1()
-
定义一个矩形类,拥有属性:长、宽 拥有方法:求周长、求面积
class Rectangle: def __init__(self,long,wide): self.long = long self.wide = wide def area(self): return self.wide*self.long def perimeter(self): return 2*(self.wide+self.long) c1 = Rectangle(2,3) # c1.long = 2 # c1.wide = 3 print(c1.area()) print(c1.perimeter())
-
定义一个二维点类,拥有属性:x坐标、y坐标 拥有方法:求当前点到另外一个点的距离
# 定义一个二维点类,拥有属性:x坐标、y坐标 拥有方法:求当前点到另外一个点的距离 class Point(): def __init__(self,a,b,x,y): self.a = a self.b = b self.x = x self.y = y def distance(self): return ((self.a - self.x) ** 2 + (self.b - self.y) ** 2) ** 1 / 2 c1 = Point(1, 2, 3, 4) print(c1.distance())
-
定义一个圆类,拥有属性:半径、圆心 拥有方法:求圆的周长和面积、判断当前圆和另一个圆是否外切
class Circle: """圆""" pi = 3.1415926 def __init__(self, r1, r2, center1_x, center1_y, center2_x, center2_y): self.r1 = r1 self.r2 = r2 self.center1_x = center1_x self.center1_y = center1_y self.center2_x = center2_x self.center2_y = center2_y def area(self): """求面积""" # 注意:在实现对象方法的功能的时候如果需要对象属性,由self来提供 return Circle.pi * self.r1 ** 2 def Perimeter(self): """面积""" return 2 * self.r1 * Circle.pi def relationship(self): if ((self.center1_x - self.center2_x) ** 2 + ( self.center1_y - self.center2_y) ** 2) ** 1 / 2 == self.r1 + self.r2: return else: return 'Flase' c1 = Circle(2, 3, 1, 2, 3, 4) print(c1.relationship()) # c1 = Circle(10) print(c1.area()) # c1.r = 100 # print(c1.area()) print(c1.Perimeter())
-
定义一个线段类,拥有属性:起点和终点, 拥有方法:获取线段的长度
class Line(): '''线段长度''' def __init__(self,a,b,x,y): self.a = a self.b = b self.x = x self.y = y def lenth(self): return ((self.a-self.x)**2+(self.b-self.y)**2) c1 = Line(1,2,3,4) print (c1.lenth())
day18-面向对象作业
最新推荐文章于 2023-02-04 22:00:46 发布