为什么在声明后设置一个class属性在python中返回一个错误?

时间:2018-02-27 11:59:40

标签: python syntax-error

我正在制作地牢风格的游戏,我创建了一个名为places.py的文件来存储这些地方。我正在使用一个类,然后向该类添加属性。我收到错误,这是错误消息:

  

E0001:语法无效(第8行)

这是我的places.py代码:

class place(object):
    def __init__(self):
        self.name=''
        self.nearplaces=[]
        self.ground=[]
        self.monsters=[]
1 = place
1.name='Ruby City'
1.nearplaces=[2,3]
1.ground=[1]
1.monsters=[]

令人困惑的是,在声明之后,我在尝试更改属性时收到错误。这可能是一个非常简单的问题,但我想知道为什么它不起作用,以及如何使它工作。谢谢。

1 个答案:

答案 0 :(得分:1)

首先,您不能将整数文字(如1)用作变量名。这是为了避免歧义,因此解释器知道它是在查看变量还是数字(参见rules for Python identifiers)。

其次,要正确实例化您的课程,您需要使用()

尝试:

level_1 = place()
level_1.name='Ruby City'
level_1.nearplaces=[2,3]
level_1.ground=[1]
level_1.monsters=[]