移动并重命名 Python 词典

Move and Rename Python Dictionary

我正在 python 中制作基于文本的游戏,希望角色能够装备武器。我有两本字典是这样存放的(esword是装备剑的):

esword = {
}

swords = {
        'wooden_sword': {'name': 'Wooden Sword', 'dmg': 1},
        'stone_sword' : {'name': 'Stone Sword', 'dmg': 2},
        'gold_sword': {'name': 'Gold Sword', 'dmg': 2.5}
}

我希望角色能够装备一把剑,这涉及将它移入 esword(而不是将其从剑词典中删除,可能使用 .copy())词典并将其重命名为 'equippedsword'这样我就可以用 esword['equippedsword'][somekey] .

来调用它

该游戏类似于掷骰子游戏,并增加了如图所示的剑攻击:

yourRollSword = (yourRoll + esword['equipped']['dmg'])

所以我基本上只是想要一种从装备好的剑字典中获取钥匙的方法。

我想它可能是这样的:

esword = swords['wooden_sword']
del swords['wooden_sword']

这将从 "all swords owned by the character" 的字典中删除剑并将其分配给 esword 变量。

你可以这样做作业:

sword_type = input("Which type of sword?")
esword[sword_type] = swords[sword_type]

如果他们之后掉落了那把武器,你可以这样做

dropped_sword = 'stone_sword'
del esword[dropped_sword]

可以做一个函数

def equip(sword,swords):
    esword = swords[sword]
    return esword

esword = equip('gold_sword',swords)