2016-03-06 83 views
-5

所以我做一個點類的方法之一是翻譯:的Python - 縮進錯誤

def translate(self, delta_x, delta_y): 
     if not isinstance(delta_x, float): 
      raise Error ("Parameter \"delta_x\" illegal.") 
     self.x0 = self.x + delta_x 
     if not isinstance(delta_y, float): 
      raise Error ("Parameter \"delta_y\" illegal.") 
     self.y0 = self.y + delta_y 

我在做什麼是養一個錯誤,如果delta_x或delta_y是float類型不行。問題是我不斷收到一個錯誤,說 IndentationError: unindent does not match any outer indentation level 所以它爲什麼這樣做呢?

+0

您發佈代碼時沒有縮進錯誤。 – timgeb

+0

有。剛開始的時候只有4個空格,並沒有標籤,所以python沒有將它識別爲縮進,它只是將它看作4個空格。 –

+0

「[空格是首選的縮進方法。](https://www.python.org/dev/peps/pep-0008/#tabs-or-spaces)」 - PEP-0008(Python代碼樣式指南) – Matthias

回答

-2

有超過400位在那裏

def translate(self, delta_x, delta_y): 
     if not isinstance(delta_x, float): 

你應該處處給予相同intendation。

+1

你應該,但這不是OP代碼中的錯誤。 – timgeb

+2

唯一的要求是匹配同一級別的縮進,所以代碼在語法上是正確的。 – bereal

+0

再說一遍,我已經知道了。在開始的時候,它似乎沒有被1標籤,只有4個空格。 –