>  기사  >  백엔드 개발  >  Python 익명 함수 정의 및 예제 분석

Python 익명 함수 정의 및 예제 분석

乌拉乌拉~
乌拉乌拉~원래의
2018-08-22 16:17:402351검색

다음 글에서는 python 익명 함수가 무엇인지 알아보겠습니다. Python 익명 함수와 python 익명 함수의 이점에 대해 알아보세요. 좋아요, 더 이상 고민하지 말고 다음 기사를 시작하겠습니다.

익명 함수

python은 람다를 사용하여 익명 함수를 만듭니다.

lambda는 단지 표현식일 뿐이고 함수 본문은 def보다 훨씬 간단합니다.

람다의 본문은 코드 블록이 아닌 표현식입니다. 제한된 논리만 람다 식으로 캡슐화할 수 있습니다.

람다 함수에는 자체 네임스페이스가 있으며 자체 매개변수 목록 외부 또는 전역 네임스페이스에 있는 매개변수에 액세스할 수 없습니다.

람다 함수는 한 줄만 쓸 수 있는 것처럼 보이지만 C나 C++의 인라인 함수와 동일하지 않습니다. 후자의 목적은 스택 메모리를 차지하지 않고 작은 함수를 호출하여 작업 효율성을 높이는 것입니다.

함수를 전달할 때 명시적으로 함수를 정의할 필요가 없는 경우에는 익명 함수를 직접 전달하는 것이 더 편리합니다.

Python에서는 익명 함수에 대한 지원이 제한되어 있습니다. 여전히 map() 함수를 예로 들면, f(x)=x2를 계산할 때 f(x) 함수를 정의하는 것 외에도 익명 함수를 직접 전달할 수도 있습니다.

>>> list(map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9]))[1, 4, 9, 16, 25, 36, 49, 64, 81]

다음에서 볼 수 있습니다. 익명 함수 람다 x : x * x가 실제로는 다음과 같습니다.

def f(x):
    return x * x

람다 키워드는 익명 함수를 나타내고 콜론 앞의 x는 함수 매개변수를 나타냅니다.

익명 함수에는 표현식이 하나만 있을 수 있다는 제한이 있습니다. 반환 값은 표현식의 결과입니다.

익명 함수를 사용하면 이점이 있습니다. 함수에 이름이 없으므로 함수 이름 충돌에 대해 걱정할 필요가 없기 때문입니다. 게다가 익명 함수도 함수 객체입니다. 익명 함수를 변수에 할당한 후 해당 변수를 사용하여 함수를 호출할 수도 있습니다.

>>> f = lambda x: x * x
>>> f
<function <lambda> at 0x101c6ef28>
>>> f(5)25

위는 이 글에서 주로 소개하는 내용입니다. 관련 정보 Python 익명 함수에 대한 지식, 위 내용을 이해하는 데 해당 정보를 활용할 수 있기를 바랍니다. 이 글에서 제가 설명한 내용이 여러분에게 도움이 되고 파이썬을 더 쉽게 배울 수 있기를 바랍니다.

더 많은 관련 지식을 알고 싶으시면 PHP 중국어 홈페이지의 Python tutorial 칼럼을 방문해 주세요.

>

위 내용은 Python 익명 함수 정의 및 예제 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.