如何给一个类实例变量赋值?

时间:2019-01-25 13:51:43

标签: python class

我正在构建一种编程语言,需要帮助 我在varObject.py上有第一个代码段,在lexer.py上有第二个代码段:

varObject.py

class VariableObject(object):

    def __init__(self):
        type(self).variables = {}

    def set_variable(self, name, value):
        self.variables[name] = value

lexer.py

from varObject import VariableObject

class Lexer(object):

    def __init__(self, source_code):
        self.source_code = source_code

    def tokenize(self):
        varsdb = VariableObject()
        varsdb.set_variable("x", 5)
        print(varsdb.variables)

预期输出为{"x": 5},但实际输出为{}

1 个答案:

答案 0 :(得分:2)

https://docs.python.org/2/tutorial/classes.html#class-objects

我觉得您在这里缺少了代码的一些关键部分,但是您只需要在类的范围内声明一个变量。查看链接上的示例。希望这会有所帮助