需求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 = xself.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("圆上")
说明:整个过程是先定义一个类,在类中书写构造函数和成员函数,并在类外面创建对象,调用成员函数