版權所有,未經許可,禁止轉載
章節
- Python 介紹
- Python 開發環境搭建
- Python 語法
- Python 變量
- Python 數值類型
- Python 類型轉換
- Python 字符串(String)
- Python 運算符
- Python 列表(list)
- Python 元組(Tuple)
- Python 集合(Set)
- Python 字典(Dictionary)
- Python If … Else
- Python While 循環
- Python For 循環
- Python 函數
- Python Lambda
- Python 類與對象
- Python 繼承
- Python 迭代器(Iterator)
- Python 模塊
- Python 日期(Datetime)
- Python JSON
- Python 正則表達式(RegEx)
- Python PIP包管理器
- Python 異常處理(Try…Except)
- Python 打開文件(File Open)
- Python 讀文件
- Python 寫文件
- Python 刪除文件與文件夾
lambda函數是一個簡短的匿名函數。
lambda函數可以接受任意數量的參數,但只能包含一個表達式。
語法
lambda 參數 : 表達式
接受參數,執行表達式,返回結果:
示例
一個lambda函數,把參數加10,然后返回結果:
x = lambda a : a + 10
print(x(5))
Lambda函數可以接受任意數量的參數:
示例
一個lambda函數,將參數a與參數b相乘,然后返回結果:
x = lambda a, b : a * b
print(x(5, 6))
示例
一個lambda函數,對參數a、b、c求和並返回:
x = lambda a, b, c : a + b + c
print(x(5, 6, 2))
為什么使用Lambda函數?
lambda的好處是讓代碼更簡潔優雅。
假設你有一個函數,帶一個參數,這個參數將與一個未知數相乘:
def myfunc(n):
return lambda a : a * n
上面的函數定義返回一個lambda函數。
下面的示例使用這個函數定義創建了一個函數,該函數把傳入的參數乘以2,返回結果:
示例
def myfunc(n):
return lambda a : a * n
mydoubler = myfunc(2)
print(mydoubler(1))
使用相同的函數定義再創建一個函數,該函數把傳入的參數乘以3,返回結果:
示例
def myfunc(n):
return lambda a : a * n
mytripler = myfunc(3)
print(mytripler(1))
也可以使用相同的函數定義把創建的兩個函數放在同一個程序中:
示例
def myfunc(n):
return lambda a : a * n
mydoubler = myfunc(2)
mytripler = myfunc(3)
print(mydoubler(1))
print(mytripler(1))
lambda函數通常是在短時間內需要匿名函數時使用。