项目实训 人狗大战
多个人,多条狗,多个品种,年龄,攻击力
attack_vals = { "二哈":20, "藏獒":70, "金毛":40 } def dog(name, d_type): data = {
"name":name, "d_type":d_type, "life_val":100 } if d_type in attack_vals:
data["attack_val"] = attack_vals[d_type] else: data["attack_val"] = 15 def
dog_bite(person_obj): person_obj["life_val"] -= data["attack_val"]
print("狗[%s]咬了人[%s]一口,人掉血[%s],还有血量[%s]..." % (data['name'], person_obj["name"],
data["attack_val"], person_obj["life_val"])) data["bite"] = dog_bite return
data def person(name,age): data = { "name": name, "age": age, "life_val": 100 }
if age >= 18: data["attack_val"] = 50 else: data["attack_val"] = 30 def
person_beat(dog_obj): dog_obj["life_val"] -= data["attack_val"]
print("人[%s]打了狗[%s]一棒,狗掉血[%s],还有血量[%s]..." % (data['name'], dog_obj["name"],
data["attack_val"], dog_obj["life_val"])) data["beat"] = person_beat return
data d1 = dog("zbc1","二哈") d2 = dog("zbc2","藏獒") d3 = dog("zbc3","金毛") p1 =
person("hga",18) p2 = person("hag2",15) p3 = person("hga3",19) d1["bite"](p1)
p1["beat"](d1) d1["bite"](p1) d1["bite"](p1) p1["beat"](d1)