lambda表达式

来源:互联网 发布:retrofit 传json 编辑:程序博客网 时间:2024/05/01 10:42

1,lambda的一般形式是关键字lambda后面跟一个或多个参数,紧跟一个冒号,以后是一个表达式。lambda是一个表达式而不是一个语句。它能够出现在python语法不允许def出现的地方。作为表达式,lambda返回一个值(即一个新的函数)。lambda用来编写简单的函数,而def用来处理更强大的任务。

f = lambda x,y,z : x+y+z  print f(1,2,3)    g = lambda x,y=2,z=3 : x+y+z  print g(1,z=4,y=5)  

map函数可以在序列中映射函数进行操作

def inc(x):      return x+10        L = [1,2,3,4]  print map(inc,L)  print map((lambda x: x+10),L)

列表=列表.apply(lambda x:logodds[x])

address_features=cleanData["Address"].apply(lambda x: logodds[x])

带判断的lambda

cleanData["IsIntersection"]=cleanData["Address"].apply(lambda x: 1 if "/" in x else 0) #判断是否为交叉口

列表.apply(parse_time)   变为[[1,3,4,5],[2,3,4,5],.......]

*列表.apply(parse_time)   变为[1,3,4,5]    [2,3,4,5]  ....

zip   变为    [1,2,....],[3,3.....]


cleanData["Time"], cleanData["Day"], cleanData["Month"], cleanData["Year"]=zip(*cleanData["Dates"].apply(parse_time))


    embedding_weights = [np.array([embedding_model[w] if w in embedding_model\                                                        else np.random.uniform(-0.25,0.25,embedding_model.vector_size)\                                                        for w in vocabulary_inv])]


原创粉丝点击