我需要根据敌人和武器确定对角色造成的伤害量。每种武器都会受到不同程度的伤害,具体取决于它的攻击对象。如果不编写很多if语句,最好的方法是什么?
答案 0 :(得分:1)
如果您正在研究通用方法,我建议您构建一个查找字典,如下所示。您可以使用此词典计算损坏,
def get_damage(enemy_type,weapon):
damage_dict = {"enemy_type1":{'weapon1':10,'weapon2':20,'weapon3':50},
"enemy_type2":{'weapon1':5,'weapon2':20,'weapon3':45},
"enemy_type3":{'weapon1':15,'weapon2':20,'weapon3':40,'weapon4':50},
}
return damage_dict.get(enemy_type).get(weapon)
print(get_damage('enemy_type2','weapon2'))