需求1:定义一“圆”(Circle)类,圆心为“点”Point类,构造一圆,求圆的周长和面积,并判断某点与圆的关系
分析:
Circle:
特征:圆心,半径
行为:圆的周长和面积
Point:
特性:x y
实现1:首先创建一个文件夹,文件夹下新建circle.py、point.py和test.py文件,分别定义,并保存运行test.py文件实现功能
circle.py文件:
''' 特征:圆心,半径 行为:圆的周长和面积 ''' class Circle(): #1.类名 #2.构造函数 def __init__(self,radius,circlePoint): self.radius = radius #半径 self.circlePoint = circlePoint #圆心 #3.成员函数 #求面积 def area(self): return 3.14 * self.radius ** 2 #求周长 def zhouCahng(self): return 2 * 3.14 * self.radius
point.py文件:
''' 特性:x y ''' class Point(): #1.类名 #2.构造函数 def __init__(self,x,y): self.x = x self.y = y
test.py文件:
''' 定义一“圆”(Circle)类,圆心为“点”Point类,构造一圆,求圆的周长和面积,并判断某点与圆的关系 ''' from circle import Circle from point import Point import math #1.创建一个圆心对象 circlePoint = Point(10,20) #2.创建一个圆的对象 cir = Circle(8,circlePoint) print(cir.radius,cir.circlePoint.x,cir.circlePoint.y) #3.求圆的面积和周长【调用成员函数】 print(cir.area()) print(cir.zhouCahng()) #4.判断某点和圆之间的关系 #创建某一个点的对象 myPoint = Point(33,55) res = (cir.circlePoint.x - myPoint.x) ** 2 + (cir.circlePoint.y - myPoint.y) ** 2 distance = math.sqrt(res) if distance > cir.radius: print("圆外") elif distance < cir.radius: print("圆内") else: print("圆上")
说明:整个过程是先定义一个类,在类中书写构造函数和成员函数,并在类外面创建对象,调用成员函数