Day6 - Python基础6 面向对象编程
引子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战>的游戏,你就思考呀,人狗作战,那至少需要2个角色,一个是人, 一个是狗,且人和狗都有不同的技能,比如人拿棍打狗, 狗可以咬人,怎么描述这种不同的角色和他们的功能呢? 你搜罗了自己掌握的所有技能,写出了下面的代码来描述这两个角色 1 def person(name,age,sex,job): 2 data = { 3 'name':name, 4 'age':age, 5 'sex':sex, 6 'job':job 7 } 8 9 return data 10 11 def dog(name,dog_type): 12 data = { 13 'name':name, 14 'type':dog_type 15 } 16 return data View Code 上面两个方法相当于造了两个模子,游戏开始,你得生成一个人和狗的实际对象吧,怎么生成呢? 1 d1 = dog("李磊","京巴") 2 3 p1 = person("严帅",36,"F","运维") 4 5 p2 = person("林海峰",27,"F","Teacher") View Code 两个角色对象生成了,狗和人还有不同的功能呀,狗会咬人,人会打狗,对不对? 怎么实现呢,。。想到了, 可以每个功能再写一个函数,想执行哪个功能,直接 调用