python 关于类class的相关练习代码:狗类、具体人的对象、小明爱跑步、设计一个circle圆类、猫类抓鼠类
class Dog(): def __init__(self,D_breed,D_name,D_age,D_gender): self.breed=D_breed self.name=D_name self.age=D_age self.gender=D_gender def look_home(self): print(f'{self.name}在看家') def eat_bone(self): print(f'{self.name}在啃骨头') d=Dog('拉布拉多','小妞',2,'雄') d.look_home() d.eat_bone() class Person(): def __init__(self,name,age): self.name=name self.age=age def check_name(self): print(f'我的名字是{self.name},我今年{self.age}岁') p=Person('xx',3) p.check_name()
#小明爱跑步,爱吃东西,小明体重75公斤,每次跑步会减肥0.5公斤,每次吃东西体重会增加1公斤 class Person(): def __init__(self,p_name,p_weight): self.name=p_name self.weight=p_weight def eat(self): self.weight+=1 print(f'好吃佬,该减肥了,现在体重是:{self.weight}公斤') def run(self): self.weight-=0.5 print(f'运动,令人保持健康的身材,现在体重是:{self.weight}公斤') p=Person('小明',75) p.eat() p.run()
#设计一个Circle(圆)类,包括圆心点位置、半径等属性,方法有计算周长和面积,创建一个圆的对象,获取该圆的周长和面积, # 以及其他点和圆的关系【点的坐标可以使用元组表示(0,0)】 class Circle(): def __init__(self,c_p,c_r): self.cp=c_p self.cr=c_r def c_length(self): return 2*3.14*self.cr def c_area(self): return 3.14*self.cr**2 def relation(self,other_p): distance=(self.cp[0]-other_p[0])**2+(self.cp[1]-other_p[1])**2 pow_r=self.cr**2 if distance>pow_r: return '圆外' elif distance<pow_r: return '圆内' else: return '圆上' c=Circle((0,0),10) print(f'半径为{c.cr}的圆,周长是{c.c_length():.2f},面积是{c.c_area():.2f},同时这一点在{c.relation([0,10])}')
#猫类的属性有昵称name、年龄age,方法有抓老鼠 #鼠类的属性有昵称name,创建猫对象信息为5岁的Tom猫,创建老鼠对象信息名为jerry,执行猫爪老鼠的行为一只5岁的Tom猫抓到一只名为jerry的老鼠 class Cat(): def __init__(self,c_name,c_age): self.name=c_name self.age=c_age def catch(self,mouse): print(f'一只{self.age}岁的{self.name}猫抓到了一只名为{mouse.name}的老鼠') class Mouse(): def __init__(self,m_name): self.name=m_name mouse=Mouse('Jerry') cat=Cat('Tom',5) cat.catch(mouse)