python 使用 lambda 來建立匿名函式。
所謂匿名,意即不再使用 def 語句這樣標準的形式定義乙個函式。
語法
lambda 函式的語法只包含乙個語句:lambda [arg1 [,arg2,.....argn]]:expression
# 可寫函式說明
sum=
lambda arg1, arg2: arg1 + arg2
# 呼叫sum函式
print
("相加後的值為 : "
,sum(10
,20))
print
("相加後的值為 : "
,sum(20
,20))
輸出結果:
相加後的值為 :
30相加後的值為 :
40
return語句
return [表示式] 語句用於退出函式,選擇性地向呼叫方返回乙個表示式。不帶引數值的return語句返回none。之前的例子都沒有示範如何返回數值。
# 可寫函式說明
defsum
( arg1, arg2 )
:# 返回2個引數的和."
total = arg1 + arg2
print
("函式內 : "
, total)
return total
# 呼叫sum函式
total =
sum(10,
20)print
("函式外 : "
, total)
輸出結果:
函式內 :
30函式外 :
30
強制位置引數
用來指明函式形參必須使用指定位置引數,不能使用關鍵字引數的形式。
在以下的例子中,形參 a 和 b 必須使用指定位置引數,c 或 d 可以是位置形參或關鍵字形參,而 e 或 f 要求為關鍵字形參:
def
f(a, b,
/, c, d,
*, e, f)
:print
(a, b, c, d, e, f)
使用方法是正確的:
f(10,
20,30, d=
40, e=
50, f=
60)
使用方法會發生錯誤:
f(
10, b=
20, c=
30, d=
40, e=
50, f=60)
# b 不能使用關鍵字引數的形式
f(10,20
,30,40
,50, f=60)
# e 必須使用關鍵字引數的形式
python高階函式和匿名函式
高階函式 允許將函式本身作為引數傳入另乙個函式 允許返回乙個函式。允許返回乙個函式。map 函式 map的第乙個引數為自定義函式,第二個引數為自定義可迭代物件 例子 定義乙個函式f2求平方,使用map函式,求list1的值的平方,list1平方規則按照f2函式執行,返回結果型別為list。list1...
python遞迴函式和匿名函式
乙個函式的內部可以呼叫其他函式。但是,如果乙個函式在內部不呼叫其他函式,而是自己本身的話,這個函式就是遞迴函式。例 def fn num if num 1 result 1else result fn num 1 num return result n int input 請輸入乙個正整數 prin...
python匿名函式和遞迴函式
匿名函式格式 lambda 引數 運算 例子 hello lambda a,b a b 匿名函式一半結合內建函式使用 max list,func func匿名函式比如 列表裡面元素是字典 就是可以 list,lambda x x 鍵 min 和max幾乎一樣 map func iterables 對...