Python實(shí)現(xiàn)類似jQuery使用中的鏈?zhǔn)秸{(diào)用的示例
關(guān)于jQuery的鏈?zhǔn)秸{(diào)用
真正有意義的鏈?zhǔn)秸{(diào)用也就是方法鏈(method chaining)。方法鏈這個(gè)詞是有的,而且使用的很廣泛。其實(shí)很多人口中的“鏈?zhǔn)秸{(diào)用”實(shí)際上就是指方法鏈。但是“鏈?zhǔn)秸{(diào)用”這個(gè)詞語還可以描述函數(shù)調(diào)用鏈,所以讓它自身的存在價(jià)值變得難以理解。
我總結(jié)的方法鏈的價(jià)值有這么幾個(gè):
1. 讓調(diào)用過程更接近自然語言。
2. 把原本參數(shù)列表復(fù)雜的方法化作多個(gè)參數(shù)列表簡單的方法來使用。
3. 減少不必要的代碼量。
這個(gè)三點(diǎn)都是有益于開發(fā)的,所以方法鏈的存在很有意義。jQuery的很多東西就是使用了方法鏈的概念。
總之,如果“鏈?zhǔn)秸{(diào)用”這個(gè)詞還是盡量別用,因?yàn)闊o法從字面判斷含義。除非你想說明的是上面這個(gè)腦殘東西,你可以用“鏈?zhǔn)秸{(diào)用”去說,如果只是想描述方法鏈的概念,就直接說方法鏈就行了。
Python實(shí)現(xiàn)鏈?zhǔn)秸{(diào)用
用過jquery的一般都知道在jquery中可以鏈?zhǔn)秸{(diào)用,代碼簡潔優(yōu)雅。比如$(“a”).addClass(“test”).show().html(“foo”);。
在redis-py中的pipeline中也可以鏈?zhǔn)秸{(diào)用,比如pipe.set('foo', 'bar').sadd('faz', 'baz').incr('auto_number').execute() 。
那么究竟怎么實(shí)現(xiàn)的呢?
很簡單,返回對象自己就行了,即return self.
廢話不多說,上代碼。
class Person:
def name(self, name):
self.name = name
return self
def age(self, age):
self.age = age
return self
def show(self):
print "My name is", self.name, "and I am", self.age, "years old."
p = Person()
p.name("Li Lei").age(15).show()
相關(guān)文章
python?yaml文件數(shù)據(jù)按原有的數(shù)據(jù)順序dump問題小結(jié)
這篇文章主要介紹了python?yaml文件數(shù)據(jù)按原有的數(shù)據(jù)順序dump,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2023-11-11
sklearn-SVC實(shí)現(xiàn)與類參數(shù)詳解
今天小編就為大家分享一篇sklearn-SVC實(shí)現(xiàn)與類參數(shù)詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12
python將多個(gè)文本文件合并為一個(gè)文本的代碼(便于搜索)
源代碼目錄一般很詳細(xì),每個(gè)代碼文件都不長,一般只占幾十行而已。在跟著書籍學(xué)習(xí)的過程中,可以打開源代碼運(yùn)行之后查看效果,或者適當(dāng)修改看看變化,這都是很好的掌握技術(shù)的好辦法。2011-03-03
Python模型聚合查詢\Q查詢\F查詢\分組查詢操作技巧解析
這篇文章主要介紹了模型查詢中的一些操作技巧,主要包括模型聚合查詢,Q查詢,F(xiàn)查詢,分組查詢,有需要的朋友可以借鑒參考下,希望可以有所幫助2021-09-09
Python中的分支與循環(huán)結(jié)構(gòu)解讀
這篇文章主要介紹了Python中的分支與循環(huán)結(jié)構(gòu)解讀,在Python編程中,分支(Branch)和循環(huán)(Loop)是掌握的關(guān)鍵要素之一,它們允許您根據(jù)條件執(zhí)行不同的代碼塊,以及重復(fù)執(zhí)行特定任務(wù),需要的朋友可以參考下2023-10-10
Biblibili視頻投稿接口分析并以Python實(shí)現(xiàn)自動(dòng)投稿功能
這篇文章主要介紹了Biblibili視頻投稿接口分析并以Python實(shí)現(xiàn)自動(dòng)投稿功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02
Python數(shù)據(jù)分析之pandas比較操作
比較操作是很簡單的基礎(chǔ)知識(shí),不過Pandas中的比較操作有一些特殊的點(diǎn),本文介紹的非常詳細(xì),對正在學(xué)習(xí)python的小伙伴們很有幫助.需要的朋友可以參考下2021-05-05

