码迷,mamicode.com
首页 > 编程语言 > 详细

Python的lambda匿名函数

时间:2015-01-20 13:29:44      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:

在Python中,lambda允许用户快速定义单行函数,当然用户也可以按照典型的函数定义完成函数。lambda的目的就是简化用户定义使用函数的过程。

>>> func =lambda x: x *2   # 定义lambda函数,通过赋值给func进行调用 
 
>>> func(3) 
 
6 
 
>>>(lambda x: x *2)(3)   # lambda函数的定义和调用可以整合在一起(可读性差) 
 
6

使用lambda函数应该注意的几点:

  • lambda定义的是单行函数,如果需要复杂的函数,应该定义普通函数
  • lambda参数列表可以包含多个参数,如 lambda x, y: x + y
  • lambda中的表达式不能含有命令,而且只限一条表达式

另外补充一个细节:

我们知道在函数中使用全局变量就是在函数中添加“global var”语句即可,事实上还有个细节就是Python默认函数中的变量为全局变量,一旦在函数体的某个位置该变量被赋值,那么它就被认定为局部变量了。

In Python, variables that are only referenced inside a function are implicitly global. If a variable is assigned a new value anywhere within the function’s body, it’s assumed to be a local.

#!/usr/bin/python 
 
var=23 
 
def func_local(): 
 
    printvar   # var是全局变量。另外这里只是使用var的值而没有改变它,如果想改变该全局变量,应添加"global var" 
 
def func_global(): 
 
    var=100   # var是局部变量

Python的lambda匿名函数

标签:

原文地址:http://www.cnblogs.com/wit-lq/p/4235759.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!