python----编写游戏人物

这篇博客介绍了如何使用Python编程创建一个游戏角色类和武器类。角色类包括了名字和武器属性,而武器类则包含武器名称和攻击力。通过类与类的组合,实现了角色使用武器攻击其他游戏人物的功能。示例中创建了张飞角色,装备了丈八蛇矛,能够对目标进行攻击并显示相应的伤害值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# 练习 3:编写游戏人物
# 需求:
# 创建游戏角色类 Role
# 游戏人物角色拥有名字(name)、武器(weapon)等属性
# 游戏人物具有攻击的方法
#      我是谁,我在用什么武器,疯狂揍谁(who)
#      def attack(self, who):
# 武器(Wuqi)通过武器类实现: 名称(wname) 攻击力(power)
# 类与类:组合
class Wuqi:
    def __init__(self, wname, power):
        self.wname = wname  # 武器名称
        self.power = power  # 攻击力
class Role:
    def __init__(self, name, weapon):
        self.name = name
        self.weapon = weapon
    def attack(self, who="犇犇"):
        print("我是%s,我在用%s武器,疯狂揍%s,掉了%s血"%(
            self.name, self.weapon.wname,
            who, self.weapon.power))
w1 = Wuqi("丈八蛇矛", 98)  # wname="丈八蛇矛"  power = 98
print("w1:", w1)     # Wuqi object at 0x7f9d00c66048
print(w1.wname, w1.power)
# 丈八蛇矛   98
r2 = Role("张飞", w1) # Wuqi object at 0x7f9d00c66048
# 此时 r2.weapon 指向了 w1对象,所以r2也能获取武器的属性
print("r2.weapon", r2.weapon)
print(r2.weapon.wname, r2.weapon.power)
r2.attack("张苞")
# 丈八蛇矛 98
# self.name = "张飞"
# self.weapon = w1  # 让weapon属性指向w1对象



# print(w1)  # <Wuqi object at 0x7fb576941fd0>
# print(w1.wname, w1.power)  # 丈八蛇矛 98
#
# r1 = Role("张飞", "丈八蛇矛")  # name="张飞" weapon="丈八蛇矛"
# print(r1) # <Role object at 0x7fbf8481a7b8>
# r1.attack("张苞")  # who = "张苞"
# r1.attack("夏侯渊")  # who = "夏侯渊"
# r1.attack()  # who="犇犇"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值