람다 표현식은 외부 범위에서 변수에 대한 참조를 생성하여 외부 변수를 캡처합니다. 특정 단계는 다음과 같습니다. 람다 표현식이 외부 변수를 사용하는 경우 변수를 캡처합니다. 람다 표현식은 전역 변수가 아닌 외부 함수의 로컬 변수만 캡처할 수 있습니다. 외부 변수가 다시 할당되면 람다 식에 캡처된 참조도 업데이트됩니다.
람다 표현식이 외부 변수를 캡처하는 방법
람다 표현식은 바깥쪽 범위의 변수에 액세스할 수 있는 익명 함수입니다. 람다 식이 외부 변수를 캡처하면 해당 변수에 대한 참조가 생성됩니다.
Syntax
lambda 参数列表: 表达式
외부 변수 캡처
람다 표현식이 외부 범위에 선언된 변수를 사용하는 경우 캡처됩니다.
# 定义外部函数 def outer_function(): outer_variable = 10 # 定义 lambda 表达式,捕获 outer_variable my_lambda = lambda: outer_variable # 调用 lambda 表达式,获取外部变量 result = my_lambda() print(result) # 输出: 10
Notes
lambda 표현식은 전역 변수가 아닌 외부 함수의 지역 변수만 캡처할 수 있습니다. 또한 외부 변수가 다시 할당되면 람다 식에 캡처된 참조도 업데이트됩니다.
실용 예
# 使用 lambda 表达式对列表中的数字进行排序 numbers = [4, 2, 8, 1, 6] # 根据数字的平方对列表进行排序 sorted_numbers = sorted(numbers, key=lambda x: x**2) # 打印排序后的列表 print(sorted_numbers) # 输出: [1, 4, 2, 6, 8]
이 예에서 람다 표현식은 정렬 기준으로 외부 범위에서x
变量,并计算x
의 제곱을 캡처합니다.
위 내용은 람다 표현식은 외부 변수를 어떻게 캡처합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!