当我运行追加到列表后view_inventory功能,附项目不显示
问题描述:
class Character(object):
def __init__(self):
self.name = ""
self.inventory = []
def add_inventory(self, item):
self.inventory.append(item)
def view_inventory(self):
for i in range(len(self.inventory)):
print "%r. %s" % (i+1, self.inventory[i])
class Hero(Character):
def __init__(self):
self.name = ""
self.inventory = ["Torch", "Wrench", "Laser Cannon"]
Hero().view_inventory()
Hero().add_inventory("Key")
Hero().view_inventory()
我已经追加到它与add_inventory功能,显示“钥匙”作为加入结束后测试的库存情况的库存清单,但是Hero()。view_inventory()打印出相同的结果,不包含Key。当我运行追加到列表后view_inventory功能,附项目不显示
答
正如vaultah在评论中指出的那样,您正在创建三个单独的Hero
实例。更改如下:
hero = Hero() # create one Hero instance
hero.view_inventory() # and make the method calls on this very instance
hero.add_inventory("Key")
hero.view_inventory()
你在那里有3个不同的'英雄'实例。 – vaultah