面向对象小练习
### 1.完成下列功能: # 1.1创建一个人类Person,再类中创建3个成员属性 # animal = '高级动物' # soul = '有灵魂' # language = '语言' class Person(): animal='高级动物' soul ='有灵魂' language ='语言' obj =Person() print(Person.animal) print(Person.soul) print(Person.language) # 1.2在类中定义三个方法,吃饭,睡觉,工作. class Peraon(): def func(self): print("吃饭") def func1(self): print("睡觉") def func2(self): print("工作") obj =Peraon() obj.func() obj.func1() obj.func2() # 1.3在此类中的__init__方法中,给对象封装5个属性: 国家 , 姓名 , 性别 , 年龄 , 身高. class Chnai_name(): def __init__(self, country,name,gender,age,height): self.country = country self.name =name self.gender =gender self.age = age self.height =height def func(self): print("{},{},{},{},{}".format(self.country,self.name,self.gender,self.age,self.height)) final =Chnai_name("中国","姓名","性别","年龄","身高") final.func() # 1.4实例化四个人类对象: # 第一个人类对象p1属性为:中国,alex,未知,42,175. # 第二个人类对象p2属性为:美国,武大,男,35,160. # 第三个人类对象p3属性为:你自己定义. # 第四个人类对象p4属性为:p1的国籍,p2的名字,p3的性别,p2的年龄,p3的身高. class Chnai_name(): def __init__(self,country,name,gender,age,height): self.country = country self.name =name self.gender =gender self.age = age self.height =height def p1(self): print("{},{},{},{},{}" .format(self.country,self.name,self.gender,self.age,self.height)) obj1 = Chnai_name("中国","alex","未知",42,175) obj1.p1() obj2 = Chnai_name("美国","武大","男",35,160) obj2.p1() obj3 = Chnai_name("日本","苍老师","男",35,180) obj3.p1() obj4 = Chnai_name(obj1.country,obj2.name,obj3.gender,obj2.age,obj3.height) obj4.p1() # 1.5 通过p1对象执行吃饭方法,方法里面打印:alex在吃饭. # 1.6 通过p2对象执行吃饭方法,方法里面打印:武大在吃饭. # 1.7 通过p3对象执行吃饭方法,方法里面打印:(p3对象自己的名字)在吃饭. # 1.8 通过p1对象找到类中成员属性animal # 1.9 通过p2对象找到类中成员属性soul # 2.0 通过p3对象找到类中成员属性language # ### 2.通过自己创建类,实例化对象 #通过调用对象当中的方法,在终端输出如下信息 #小明,10岁,男,上山去砍柴 #小明,10岁,男,开车去东北 #小明,10岁,男,最爱大保健 #老李,90岁,男,上山去砍柴 #老李,90岁,男,开车去东北 #老李,90岁,男,最爱大保健 class Chnai_name(): def __init__(self,name,age,gender): self.name =name self.gender =gender self.age = age def p1(self): print("{},{},{},上山去砍柴".format(self.name,self.age,self.gender,)) def p2(self): print("{},{},{},开车去东北" .format(self.name,self.age,self.gender)) def p3(self): print("{},{},{},最爱大保健".format( self.name, self.age, self.gender)) obj = Chnai_name("小明","10","男") obj.p1() obj = Chnai_name("小明","10","男") obj.p2() obj = Chnai_name("小明","10","男") obj.p3() obj = Chnai_name("老李","90","男") obj.p1() obj = Chnai_name("老李","90","男") obj.p2() obj = Chnai_name("老李","90","男") obj.p3() # ### 3.模拟英雄联盟写一个游戏人物的类 #要求: #(1) 创建一个 Game_role 的类. #(2) 构造方法中给对象封装 name,ad(攻击力),hp(血量).三个属性. #(3) 创建一个attack方法,此方法是实例化两个对象,互相攻击的功能: #例: 实例化一个对象 盖伦,ad为10, hp为100 #实例化另个一个对象 剑豪 ad为20, hp为80 #盖伦通过attack方法攻击剑豪,此方法要完成 '谁攻击谁,谁掉了多少血, 还剩多少血'的提示功能. # ### 4.请定义一个圆形类,有计算周长和面积的两个方法 (圆的半径通过参数传递给初始化方法)