亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Python中使用return self方法

發布時間:2021-01-06 15:57:21 來源:億速云 閱讀:344 作者:Leah 欄目:開發技術

怎么在Python中使用return self方法?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

在Python中,return self的作用為:

Returning self from a method simply means that your method returns a reference to the instance object on which it was called. This can sometimes be seen in use with object oriented APIs that are designed as a fluent interface that encourages method cascading.

通俗的說法是, allow chaining

例子:

class Foo(object):
 def __init__(self):
  self.myattr = 0
 def bar(self):
  self.myattr += 1
  return self
f = Foo()
f.bar().bar().bar()
print(f.myattr)

輸出結果為4.

把bar()方法改為返回return None, 則上述代碼會出錯。

class Foo(object):
 def __init__(self):
  self.myattr = 0
 def bar(self):
  self.myattr += 1
  return None
f = Foo()
f.bar().bar().bar()
print(f.myattr)

輸出結果如下:

AttributeError: 'NoneType' object has no attribute 'bar'

那么return self返回的結果是什么呢?

class Foo(object):
 def __init__(self):
  self.myattr = 0
 def bar(self):
  self.myattr += 1
  #return None
  return self
f = Foo()
print(type(f.bar()))

輸出結果為:

<class '__main__.Foo'>

可以發現,return self返回的是類的實例。

一個真實的例子:

sklearn模塊中很多方法的返回結果為self, 比如大多數模型的fit()方法,例子如下:

from sklearn.linear_model import LogisticRegression
X = [[0,0], [0,1], [1,0], [1,1]]
y = [0, 1, 1, 0]
clf = LogisticRegression()
# fit函數返回的結果就是self, 允許鏈式調用
t = clf.fit(X,y).predict([[0,2]])
print(t)

輸出:

[0]

關于怎么在Python中使用return self方法問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

彭水| 涪陵区| 紫云| 辽宁省| 上饶市| 朝阳市| 梅河口市| 元朗区| 文昌市| 建瓯市| 桦南县| 怀宁县| 乌鲁木齐县| 随州市| 武邑县| 北碚区| 丹寨县| 北京市| 常山县| 莆田市| 龙岩市| 五河县| 屏南县| 天镇县| 宝清县| 乌拉特前旗| 巴彦淖尔市| 精河县| 锡林郭勒盟| 凉城县| 青海省| 织金县| 宿松县| 平谷区| 祁阳县| 逊克县| 城固县| 尉氏县| 夏河县| 新邵县| 镇安县|