一、什么是闭包?官方”的解释是:闭包是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。相信很少有人能直接看懂这句话,因为他描述的太学术。其实这句话通俗的来说就是:JavaScript中所有的function都是一个闭包。不过一般来说,嵌套的func...
分类:
编程语言 时间:
2014-10-11 22:46:36
阅读次数:
332
用过linux的基本知道它的管道,是将一个程序或命令的输出作为另一个程序或命令的输入.
废话少说,下面我们看用python怎么实现unix管道风格的函数调用.
#coding=utf-8
class Pipe:
def __init__(self, func):
self.func = func
def __ror__(self, other):
...
分类:
其他好文 时间:
2014-10-11 20:20:36
阅读次数:
184
很多人把装饰器搞的很复杂,其实本质很简单.
首先,什么是装饰器呢?在代码中发现戴着@xxx帽子的,就是装饰器.
那要怎么自己定义一个装饰器呢?
其实任何一个接收一个参数的callable都可以用来做装饰器,比如函数和类.为方便起见,下面的例子都用函数来说明.
def deco(func):return 1
这里,deco就可以做装饰器.
@deco
def f(args):pass
...
分类:
编程语言 时间:
2014-10-11 20:05:36
阅读次数:
240
大部分人使用的可能都是github.com/robfig/写的cron模块,但是这个模块里只有动态添加任务,却没有动态删除任务的func,所以经过一番查找,发现了一个比较好的cron模块:https://github.com/jakecoffman/cron这个模块虽然fork的人比较少但是个人认为还是不错的,他基本是robfig..
分类:
编程语言 时间:
2014-10-11 15:32:16
阅读次数:
4134
一、lambda函数
例如:
fun1 = lambda x,y: x + y
print fun1(3,4)输出:7
lambda生成一个函数对象。该函数参数为x,y,返回值为x+y。函数对象赋给func。
func的调用与正常函数无异。
上面的代码等价于:
def fun2(x, y):
return x + y
二、函数作为参数
函数可以作为一个对象,进行参数...
分类:
编程语言 时间:
2014-10-11 11:55:25
阅读次数:
175
引言:函数适配器也是种模板技术, 通过绑定把函数绑定到适配器上实现函数调用, 并且可以修改参数,和移动参数的位置。功能强大在这里简单介绍一下这种强大的工具1. 对于普通函数, 直接把它的类型 如此填入 适配器当做函数类型即可 function pf = &func ; 这样定义, pf就变成了...
分类:
编程语言 时间:
2014-10-11 00:00:34
阅读次数:
295
if(target.addEventListener)//非ie和ie9target.addEventListener(type,func,false);elseif(target.attachEvent)//ie6到ie8target.attachEvent("on"+type,func);els...
分类:
其他好文 时间:
2014-10-10 23:01:04
阅读次数:
144
func?dst(in?[]float64)?[]float64?{
????out?:=?make([]float64,?len(in))
????nr?:=?len(in)
????for?i?:=?0;?i?<?nr;?i++?{
????????for?j?:=?0;?j?<?nr;?j++?...
分类:
编程语言 时间:
2014-10-10 22:28:54
阅读次数:
227
Predicate 是一个委托,它代表了一个方法,它的定义是:namespace System { // 摘要: 表示定义一组条件并确定指定对象是否符合这些条件的方法。 // 参数: // obj: 要按照由此委托表示的方法中定义的条件进行比较的对象。 // 类型参数: // T...
function addLoadEvent(func) {var oldonload = window.onload;if (typeof window.onload != 'function') {window.onload = func;} else {window.onload = funct...
分类:
其他好文 时间:
2014-10-10 20:58:04
阅读次数:
132