class Neuralnetwork(object):
def __init__(self, data):
self.data = data
def scan(self):
print(self.data)
def sigmoid(self, z):
g = 1/(1 + math.exp(-z))
return (g)
a1 = sigmoid(7)
print a1
我不知道爲什麼它不會與雙曲線函數打印A1變量。它不斷髮出一個錯誤,說它需要2個輸入,而不是1個。但是我認爲通過在類中調用函數,我不需要再給自己提供自己的東西嗎?函數在Python類中(使用自己或沒有)
編輯:我有最後兩條語句,因爲我仍在測試一些事情,以確保所有內容都按照課程內容進行。
因爲'sigmoid'是類定義中的函數。你爲什麼縮進'a1 = ..'和'打印a1'成爲班級的一部分?如果它不是一種方法,爲什麼不把它放在類定義的外部** def sigmoid **之外? –
你確定你最後兩行的縮進。似乎它應該脫離課堂。 – Astrom
如果你是從*裏面調用一個類方法,你需要把它稱爲'self.sigmoid(7)'。如果你想從* outside *之外調用它,那麼你需要創建一個'Neuralnetwork'的實例*來調用'obj.sigmoid(7)'。 –