使用python代码实现以下功能:创建一个游戏人物的类(GameRole),构造方法中封装三个属性:name、ad(攻击力)、hp(血量),创建一个attack方法,此方法实现互相攻击的功能。测试该类:实例化两个对象,例如:将军ad为20、hp为100,小兵ad为10, hp为80,将军使用attack方法攻击小兵,并提示“谁攻击了谁,谁掉了多少血,还剩多少血”,测试自行输入
时间: 2024-02-20 08:01:51 浏览: 14
好的,以下是实现该功能的Python代码:
```python
class GameRole:
def __init__(self, name, ad, hp):
self.name = name
self.ad = ad
self.hp = hp
def attack(self, target):
damage = self.ad
target.hp -= damage
print(f"{self.name}攻击了{target.name},{target.name}掉了{damage}点血,还剩{target.hp}点血。")
# 测试
general = GameRole("将军", 20, 100)
soldier = GameRole("小兵", 10, 80)
general.attack(soldier)
```
运行代码后,将会输出以下结果:
```
将军攻击了小兵,小兵掉了20点血,还剩60点血。
```
这说明将军成功攻击了小兵,小兵的血量减少了20点。