第21講 函式 lambda表示式

2021-08-08 08:16:47 字數 1402 閱讀 5675

def fun_a(x, y=3):

return x * y

答案:

lambda x, y=3: x * y

lambda x : x if x % 2 else none
答案:

def is_odd(x):

if x % 2:

return x

else:

return none

答:

a.        python寫一些執行指令碼時,使用匿名函式就可以省下定義函式過程,比如說我們只是需要寫個簡單的指令碼來管理伺服器時間,我們就不需要專門定義乙個函式然後再寫呼叫,使用匿名函式就可以使得**更加精簡。

b.        對於一些比較抽象並且整個程式執行下來只需要呼叫一兩次的函式,有時候給函式起個名字也是比較頭疼的問題,使用匿名函式就不需要考慮命名的問題了。

c.        簡化**的可讀性,由於普通的屌絲函式閱讀經常要跳到開頭def定義部分,使用匿名函式函式可以省去這樣的步驟。

答案:

list(filter(lambda n : not(n % 3), range(1, 100)))

答案:例如將第3題轉為列表推導式即:

[ i for i in range(1, 100) if not(i % 3)]

>>> list(zip([1, 3, 5, 7, 9], [2, 4, 6, 8, 10]))

[(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]

但如果我希望打包的形式是靈活多變的列表而不是元祖(希望是[[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]這種形式),你能做到嗎?(採用map和lambda表示式)

答案:

>>> list(map(lambda x, y : [x, y], [1, 3, 5, 7, 9], [2, 4, 6, 8, 10]))

[[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]

注意:強大的map()後邊是可以接受多個序列作為引數的。

def make_repeat(n):

return lambda s : s * n

double = make_repeat(2)

print(double(8))

print(double('fishc'))

答案:

16fishcfishc

lambda表示式 lambda表示式

1.概述 c 11 中的 lambda 表示式用於定義並建立匿名的函式物件,以簡化程式設計工作。lambda 的語法形式如下 函式物件引數 操作符過載函式引數 mutable 或 exception 宣告 返回值型別可以看到,lambda 主要分為五個部分 函式物件引數 操作符過載函式引數 muta...

lambda表示式(函式)

lambda名稱來自lambda calculus,是一種使用匿名函式來定義和使用函式的數學系統。當某些函式比較簡單,只是臨時使用一下,便可以使用lambda表示式。1.定義及使用 例如 int x bool f3 int x 上面乙個是lambda表示式,乙個是函式,可以看出,代替了函式名,lam...

python函式 Lambda表示式

函式 定義乙個函式 任何傳入引數和自變數必須放在圓括號中間,圓括號之間可以用於定義引數。函式的第一行語句可以選擇性地使用文件字串 用於存放函式說明。函式內容以冒號起始,並且縮排。return 表示式 結束函式,選擇性地返回乙個值給呼叫方。不帶表示式的return相當於返回 none。2.語法 pyt...