您的位置:首页 > Web前端 > JQuery

Python实现类似jQuery使用中的链式调用的示例

2016-06-16 00:00 881 查看
关于jQuery的链式调用

真正有意义的链式调用也就是方法链(method chaining)。方法链这个词是有的,而且使用的很广泛。其实很多人口中的“链式调用”实际上就是指方法链。但是“链式调用”这个词语还可以描述函数调用链,所以让它自身的存在价值变得难以理解。

我总结的方法链的价值有这么几个:

1. 让调用过程更接近自然语言。

2. 把原本参数列表复杂的方法化作多个参数列表简单的方法来使用。

3. 减少不必要的代码量。

这个三点都是有益于开发的,所以方法链的存在很有意义。jQuery的很多东西就是使用了方法链的概念。

总之,如果“链式调用”这个词还是尽量别用,因为无法从字面判断含义。除非你想说明的是上面这个脑残东西,你可以用“链式调用”去说,如果只是想描述方法链的概念,就直接说方法链就行了。

Python实现链式调用

用过jquery的一般都知道在jquery中可以链式调用,代码简洁优雅。比如$(“a”).addClass(“test”).show().html(“foo”);。

在redis-py中的pipeline中也可以链式调用,比如pipe.set('foo', 'bar').sadd('faz', 'baz').incr('auto_number').execute() 。

那么究竟怎么实现的呢?

很简单,返回对象自己就行了,即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()


您可能感兴趣的文章:

Python实现子类调用父类的方法
Nodejs中调用系统命令、Shell脚本和Python脚本的方法和实例
python调用shell的方法
Python调用C/C++动态链接库的方法详解
python实现调用其他python脚本的方法
c++生成dll使用python调用dll的方法
举例讲解Linux系统下Python调用系统Shell的方法
python实现根据窗口标题调用窗口的方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Python 链式调用