【发布时间】:2018-07-24 13:56:50
【问题描述】:
我正在尝试在 Python 中编写一个包含 2 个函数的类,如下所示:
class Arithmetic(Enum):
add = 1
addi = 2
sub = 3
lui = 4
auipc = 5
def parse(inst, *argv):
if inst == "add":
return calculate_add(argv)
elif inst == "addi":
pass
elif inst == "sub":
pass
elif inst == "lui":
pass
elif inst == "auipc":
pass
def calculate_add(*argv):
return argv[0] + argv[1]
我不断收到此错误: NameError:未定义名称“calculate_add”。我做错了什么?
【问题讨论】:
-
这是您代码中的确切缩进吗?
-
我已经检查了缩进,是的,我复制粘贴了它
-
那么这些函数不是你类的成员。
-
@VladCiotlaus:您粘贴的不能是您的真实代码,因为它在语法上不是有效的 Python;您需要在
class:行之后至少缩进一行,而您不需要。 -
@DSM 我有正确的缩进,如果我删除 calculate_add 函数并直接在解析函数中使用加法,它可以工作,但我需要向该函数添加更多,我真的不认为这是关于缩进