lamda表达式python_Python--13 lambda表达式
python 允許使用lambda表達(dá)式來創(chuàng)建匿名函數(shù)
lambda表達(dá)式
>>>def ds(x):
... return 2 * x +1
...
>>> ds(5)
11
>>>lambda x : 2* x +1
at 0x7f5f41b05d90>
>>> g = lambda x :2 * x +1
>>>g(5)
11
>>> def add(x,y):
... return x + y
...
>>> g = lambda x,y : x + y
>>> g(5,6)
11
>>> add(5,6)
11
lambda表達(dá)式的作用
Python寫一些執(zhí)行腳本時,使用lambda就可以生肖定義函數(shù)過程,比如說 我們只是需要寫個簡單的腳本來管理服務(wù)器時間,我們就不需要專門定義一個函數(shù)然后再寫調(diào)用,使用lambda就可以使得代碼更加簡單。
對于一些比較抽象并且整個程序執(zhí)行下來只需要調(diào)用一兩次的函數(shù),有時候給函數(shù)起個名字也是比較頭疼的問題,使用lambda就不需要考慮命名的問題了。
簡化代碼的可讀性,由于普通的函數(shù)閱讀經(jīng)常要跳到開頭def定義部分,使用lambda函數(shù)可以省區(qū)這樣的步驟。
兩個流弊的BIF
filter() 過濾器
help(filter)
class filter(object)
| filter(function or None, iterable) --> filter object
|
| Return an iterator yielding those items of iterable for which function(item)
| is true. If function is None, return the items that are true.
|
>>>filter(None,[1, 0, False, True])
>>>list(filter(None,[1, 0, False, True]))
[1, True]
>>> def odd(x):
... return x%2
...
>>>temp = range(10)
>>> show = filter(odd, temp)
>>>list(show)
[1, 3, 5, 7, 9]
>>> list(filter(lambda x : x %2, range(10)))
[1, 3, 5, 7, 9]
map() 影射,加工序列中的每一個元素,返回一個新的序列
>>> list(map(lambda x : x * 2, range(10)))
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
總結(jié)
以上是生活随笔為你收集整理的lamda表达式python_Python--13 lambda表达式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 获取 反射 方法 名_乐字节J
- 下一篇: 香港很早起的一个电影,大概剧情都记不清了