English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Python 기본 강의

Python 흐름 제어

Python 함수

Python 데이터 타입

Python 파일 작업

Python 객체와 클래스

Python 날짜와 시간

Python 고급 지식

Python 참조 매뉴얼

Python 익명 함수(Lambda)

이 글에서는 익명 함수라고도 하는 lambda 함수를 배울 것입니다. 예제를 통해 그들은 무엇인지, 문법, 그리고 사용법을 이해할 수 있습니다.

Python의 lambda 함수는 무엇인가요?

Python에서 익명 함수는 이름이 지정되지 않은 함수입니다.함수.

Python에서는 def 키워드가 일반 함수를 정의하는 데 사용되지만, 익명 함수 lambda를 정의하는 데 사용됩니다.

따라서, 익명 함수는 또한 lambda 함수라고도 합니다.

Python에서 lambda 함수를 어떻게 사용하나요?

python의 lambda 함수는 다음과 같은 문법을 가집니다.

python의 Lambda 함수 문법

lambda arguments: expression

Lambda 함수는 어떤 수의 매개변수를 가질 수 있지만, 하나의 표현식만을 가질 수 있습니다. 표현식은 평가되고 반환됩니다. Lambda 함수는 함수 객체가 필요한 모든 곳에서 사용할 수 있습니다.

python의 Lambda 함수 예제

这是一个使输入值翻倍的lambda函数示例。

# 程序展示lambda函数的使用
double = lambda x: x * 2
print(double(5))

출력 결과

10

在上面的程序中,lambda x: x * 2是lambda函数。这里x是参数,x * 2是求值和返回的表达式。

这个函数没有名字。它返回一个函数对象,该对象被分配给标识符double。我们现在可以把它叫做普通函数。下面声明

double = lambda x: x * 2

等同于:

def double(x):
   return x * 2

在python中使用Lambda函数

当我们临时需要匿名函数时,我们使用lambda函数。

在Python中,我们通常将其用作高阶函数的参数(该函数将其他函数作为arguments)。Lambda函数可以与filter(),map()等内置函数一起使用。

lambda与filter()一起使用的示例

在Python函数中filter()接受一个函数和一个列表作为参数。

使用列表中的所有项调用该函数,并返回一个新列表,其中包含函数计算结果为True的项。

这是使用filter()函数从列表中仅滤除偶数的示例。

# 程序从列表中过滤出偶数项
my_list = [1, 5, 4, 6, 8, 11, 3, 12]
new_list = list(filter(lambda x: (x%2 == 0) , my_list))
print(new_list)

출력 결과

[4, 6, 8, 12]

lambda与map()一起使用的示例

在Python中的map()函数接受一个函数和一个列表。

리스트의 모든 항목을 함수에 호출하고, 각 항목에 대해 함수가 반환한 항목을 포함하는 새로운 리스트를 반환합니다.

이는 map() 함수를 사용하여 리스트의 모든 항목을 두 배로 만드는 예제입니다.

# 리스트의 각 항목을 두 배로 만드는 map() 사용
my_list = [1, 5, 4, 6, 8, 11, 3, 12]
new_list = list(map(lambda x: x * 2 , my_list))
print(new_list)

출력 결과

[2, 10, 8, 12, 16, 22, 6, 24]