2016-09-29 86 views
-3

我越來越NameError: name 'addition' is not defined在運行下面的代碼NameError:名字「除了」沒有定義

class Arithmetic: 
    def __init__(self, a, b): 
     self.a = a 
     self.b = b 

    def addition(self): 
     c = a + b 
     print"%d" %c 

    def subtraction(self): 
     c=a-b 
     print "%d" % c 

add = addition(5, 4) 
add.addition() 
+2

您需要格式化您的問題。嘗試使用代碼塊並確保一切正確縮進,並且整體看起來像您的代碼。您還需要添加一個問題以及您期望從代碼中獲得的結果。 –

回答

0

你首先必須創建類的對象,那麼你就可以訪問類的功能。 試試這個:

a = Arithmatic() 
a.addition(5,4) 
0

退房這段代碼:

class Arithmetic(): 
    def init(self, a, b): 
     self.a = a 
     self.b = b 

    def addition(self): 
     c = self.a + self.b 
     print"addition %d" %c 

    def subtraction(self): 
     c = self.a - self.b 
     print"substraction %d" %c 

obj = Arithmetic() 
obj.init(5, 4) 
obj.addition() 
obj.subtraction() 
1

如果你想用你的「添加」的方法,首先需要實例化一個算術()對象,並使用點符號調用它們的功能。確保你正確地縮進了你的代碼,因爲它不僅破壞了很多PEP 8的規則,而且看起來很亂。在你的第一個定義中,不要忘記你必須輸入__init__而不是init。以下是應該應用的代碼:

class Arithmetic(object): 

    def __init__(self, a, b): 
     self.a = a 
     self.b = b 

    def addition(self): 
     c = self.a + self.b 
     print c 

    def subtraction(self): 
     c = self.a - self.b 
     print c 


a = Arithmetic(5, 4) 
a.addition() 
a.subtraction() 
相關問題