Python 은 익명 이나 내 연 함 수 를 어떻게 정의 합 니까?

문제.
sort()작업 을 위해 짧 은 반전 함 수 를 만 들 고 싶 지만 def 로 단일 함 수 를 쓰 고 싶 지 않 습 니 다.어떤 단축 키 를 통 해 내 연 방식 으로 이 함 수 를 만 들 고 싶 습 니 다.
해결 방안
일부 함수 가 매우 간단 하고 하나의 표현 식 의 값 만 계산 할 때 lambda 표현 식 으로 대체 할 수 있 습 니 다.예 를 들 면:

>>> add = lambda x, y: x + y
>>> add(2,3)
5
>>> add('hello', 'world')
'helloworld'
>>>
여기 서 사용 하 는 lambda 표현 식 은 아래 의 효과 와 같 습 니 다.

>>> def add(x, y):
...   return x + y
...
>>> add(2,3)
5
>>>
lambda 표현 식 의 전형 적 인 사용 장면 은 정렬 이나 데이터 reduce 등 입 니 다.

>>> names = ['David Beazley', 'Brian Jones',
...     'Raymond Hettinger', 'Ned Batchelder']
>>> sorted(names, key=lambda name: name.split()[-1].lower())
['Ned Batchelder', 'David Beazley', 'Raymond Hettinger', 'Brian Jones']
>>>
토론 하 다.
lambda 표현 식 은 간단 한 함 수 를 정의 할 수 있 지만 사용 에 제한 이 있 습 니 다.하나의 표현 식 만 지정 할 수 있 습 니 다.그 값 은 마지막 반환 값 입 니 다.즉,다른 언어 특성 을 포함 할 수 없다 는 것 이다.여러 문장,조건 표현 식,교체 와 이상 처리 등 을 포함한다.
lambda 표현 식 을 사용 하지 않 고 대부분의 python 코드 를 작성 할 수 있 습 니 다.그러나 표현 식 값 을 계산 하 는 짧 은 함 수 를 많이 만 들 거나 사용자 가 리 셋 함 수 를 제공 해 야 하 는 프로그램 이 필요 할 때 lambda 표현 식 의 모습 을 볼 수 있 습 니 다.
이상 은 파 이 썬 이 익명 이나 내 연 함 수 를 어떻게 정의 하 는 지 에 대한 상세 한 내용 입 니 다.파 이 썬 이 익명 이나 내 연 함 수 를 정의 하 는 데 관 한 자 료 는 다른 관련 글 에 주목 하 십시오!

좋은 웹페이지 즐겨찾기