Python:Self未定义

log*_*nne 4 python

class a(object):
 def __init__(self):
         self.b = 1
         self.c = 2
Run Code Online (Sandbox Code Playgroud)

这给出了错误:NameError:未定义名称"self"

我查看了上一篇文章,但错误原因不同.对此有何帮助?

sep*_*p2k 12

我假设之前的单个空格def __init__(self):实际上是文件中的一个选项卡,并由编辑器显示为四个空格.

但是,python将一个制表符解释为8个空格,因此python将以下两行(缩进8个空格)视为与缩进相同的缩进级别def.

这正是您不应该混合制表符和空格的原因.

  • 我认为这会产生IndentationError,因为def需要一个body. (4认同)