Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1415803
  • 博文数量: 247
  • 博客积分: 10147
  • 博客等级: 上将
  • 技术积分: 2776
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-24 15:18
文章分类

全部博文(247)

文章存档

2013年(11)

2012年(3)

2011年(20)

2010年(35)

2009年(91)

2008年(87)

我的朋友

分类: Python/Ruby

2008-11-18 20:08:43

记得很久以前就买了Python的书,但是翻过几页之后就被放在了一旁。直到这次搬家整理的时候这本书才重建天日。不过为什么我在学习Ruby的同时又开始看Python的教程呢? 或许是因为打赌的关系,又或许是因为别的什么原因,我不记得了。
在看Python的教程的时候,发现lambda可以完成很多任务。它到底是一个什么样的东西呢?在Google中搜索,对lambda有很多种称呼,比如函数,运算符,方式,关键字等等。一般来讲,lambda的作用是用来定义一个小的函数,这个和def不同。据说Lisp语言也有这样的功能,不过在我之前接触到的有限的语言中没有这样的东西。

lambda很灵活,可以用在任何需要函数的地方:

>>>def f(x):
… return x*2

>>> f(2)
4

定义一个函数f(x),f(x)=x*2. 用lambda来表达就是:

>>> f=lambda x: x*2
>>> f(2)
4

这个函数没有函数名,lambda的结果被赋值给变量f调用。

不过这个lambda在我这样的新手阅读代码的时候实在有些费力,每次看到都要反映一下才能明白过来是怎么一个函数。不过据说这个函数在将来会被去除,我觉得,虽然这是一个很方便的方法,但是移除这个lambda也不一定是一件不好的事情。

阅读(2216) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~