这是我快速运行命令后的终端答案。
Traceback (most recent call last):
File "bin/browser", line 35, in import browser
File "/home/alen/browser/browser/init.py", line 12, in from browser import BrowserWindow
File "/home/alen/browser/browser/BrowserWindow.py", line 32
self.refreshbutton = self.builder.get_object("refreshbutton")
IndentationError: unindent does not match any outer indentation level
我输入了另外两行代码BrowserWindow.py
:
def on_refreshbutton_clicked(self, widget): print "refresh";
使我的按钮能够工作。
怎么了?
答案1
2.5. 缩进代码
Python 函数没有明确的开始或结束,也没有花括号来标记函数代码的开始和结束位置。唯一的分隔符是冒号 (:) 和代码本身的缩进。
例 2.5. 缩进 buildConnectionString 函数
def buildConnectionString(params): """Build a connection string from a dictionary of parameters. Returns string.""" return ";".join(["%s=%s" % (k, v) for k, v in params.items()])
来源: 深入 Python
所以 Python 中的缩进就是那些4 个空格在函数定义、类定义、条件块的代码行开头...
基本上,函数内部的缩进与其之前的缩进不对应。