- 定义一个矩形类,拥有属性:长、宽 拥有方法:求周长、求面积
class Square:
def __init__(self, length, width):
self.length = length
self.width = width
def square(self):
return self.length * self.width
def area(self):
return 2 * (self.width + self.length)
a1 = Square(5, 2)
print(a1.square())
print(a1.area())
- 定义一个二维点类,拥有属性:x坐标、y坐标 拥有方法:求当前点到另外一个点的距离
class Two_Dimension:
def __init__(self, x, y):
self.x = x
self.y = y
def distance(self, m, n):
return ((self.x - m) ** 2 + (self.y - n) ** 2) ** 0.5
a2 = Two_Dimension(0, 0)
print(a2.distance(1, 1))
- 定义一个圆类,拥有属性:半径、圆心 拥有方法:求圆的周长和面积、判断当前圆和另一个圆是否外切
class Circle:
pi = 3.14
def __init__(self, r1, x, y):
self.r1 = r1
self.x = x
self.y = y
def square(self):
return self.r1 * 2 * Circle.pi
def area(self):
return self.r1 ** 2 * Circle.pi
def tangency(self, r2, m, n):
self.r2 = r2
distance = ((self.x - m) ** 2 + (self.y - n) ** 2) ** 0.5
if distance == self.r1 + r2:
return '相切'
elif distance > self.r1 + r2:
return '相离'
else:
return '相交'
c1 = Circle(1, 0, 0)
print(c1.area())
print(c1.square())
print(c1.tangency(1, 2, 0))
- 定义一个线段类,拥有属性:起点和终点, 拥有方法:获取线段的长度
class Segment:
def __init__(self, start, end):
self.s = start
self.e = end
def length(self):
return ((self.s[0] - self.e[0]) ** 2 + (self.s[1] - self.e[1]) ** 2) ** 0.5
s1 = Segment((0, 0), (1, 0))
print(s1.length())