Python: "Self"是不是没有定义?

标签 python python-3.x self defined

返回相同的令人困惑的脚本。我修复了很多间距问题......但似乎遗漏了更多?这有什么问题——它说的第 332 行 self is not defined...

以下是该脚本上方和下方的几行,以防万一:

#-Whats being decompiled start
#map(None,*list) = zip(*list)
class areaset(top_tsv):
   def __init__(self, file_name=0, version=0):
       top_tsv.__init__(self, file_name, version)
   self.frombin_map = [    <--- this is 332
   ('ID'        ,{'t':'ulong','lpad':0x04}),
   ('Name'      ,{'t':'str','s':0x48,'rpad':0x1C}),
   ('RGB color'   ,{'t':'color','rpad':0x01}),
   ('Sound effect ID'  ,{'t':'long'}),
   ('Color RGB'   ,{'t':'rcolor','rpad':0x01}),
   ('Lighting RGB value' ,{'t':'rcolor','rpad':0x01}),
   ('Lighting angle'  ,{'t':'float','s':0x03,'f':0x01}),
   ('Is it City?'  ,{'t':'ubyte','rpad':0x03}),
    ]

我只是想不通,我现在想不通。还有许多其他“未定义 self ”错误,但如果我修复了这个,那么至少我会知道如何修复其余部分.那我需要做什么?

最佳答案

如果代码摘录准确地反射(reflect)了程序中的内容,问题在于您的 __init__ 构造函数中只有一行。您需要修复缩进。

Self 仅在成员函数中定义。您的非缩进代码不是构造函数的一部分,但实际上是在您导入您的类时运行的。

Python 的一大优点是它使用缩进来识别语句 block ,而不是花括号或 beginend。您必须正确使用缩进,以便解释器理解您的代码。

关于Python: "Self"是不是没有定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7936426/

相关文章:

python-3.x - python的新手,我需要从输出中绘制一个条形图,以百分比表示

python - Python 中的定义方法

python - 想要使用 urllib.request 获取网页中的所有链接

python - 从 Pandas DataReader 数据框中提取特定值?

Python3 帮助确定动态创建列表的大多数 pythonic 方法

python - python中的基本面向对象实现

php - php中$this::和$this->的区别

javascript - self.setInterval 中的 jquery 关键字 self 指的是什么?查询

python - 迭代数据帧,将值附加到字典中,直到值为 NaN,然后​​启动新的字典条目

python - 使用 pip install -e 在 setup.py 中安装 data_files