[英]AttributeError for function called in another function within same class - Python
當我運行以下代碼時,我得到一個AttributeError:'set'對象沒有屬性findMean。 我究竟做錯了什么?
class BasicStats:
def findMean(self, num = {}):
length = len(num)
sum = 0
for x in num:
sum = sum + x
mean =sum/length
return mean
def findVariance(self, num = {}):
mean = self.findMean(num)
length = len(num)
squared_difference = 0
for x in num:
squared_difference = squared_difference + (x-mean)**2
variance = squared_difference/length
return variance
arr = {1, 23, 343.34, 2}
findVariance(arr)
這是因為該范圍內的self
是一個set
。 更具體地說,它是arr
(這是一個集合,你作為第一個參數傳入)。
self
關鍵字僅適用於針對類實例調用的函數(這種特殊類型的函數稱為方法, 在此處閱讀更多。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.