首页 > 解决方案 > 尽管对象的定义具有列表内容,但作为实例属性的列表仍为空

问题描述

我有班级级别:

class Level:
    def __init__(self, level_name, level_stage, level_clear, monster, items, text):
        self.level_name = level_name
        self.level_stage = level_stage
        self.level_clear = level_clear
        self.monster = monster
        self.items = items
        self.text = []

其中实例属性文本是一个空列表。然后我有我的全局对象:

level1 = Level(1, 1, False, monster1, sword2, [text11, text12])

text11 = "You enter a dark dungeon, and SUDDENLY"
text12 = "That was well done"

我的 Inventory 类中也有类似的列表,我从实例方法中附加/删除项目。在这种情况下,我试图通过定义对象来填充列表,但这不是我理解的正确方法,因为列表保持为空:

import classes as c #just for clarification of the c
print(len(c.level1.text))
print(c.level1.text)

返回

0
[]

我的问题是,如果有正确的方法可以做到这一点,我还没有找到解决方案来抓取网络。当然我可以使用一种方法将正确的列表项附加到每个实例的列表中,但我想知道是否有更优雅的解决方案?

标签: python-3.xlistinstance

解决方案


推荐阅读