> 백엔드 개발 > 파이썬 튜토리얼 > Python에서 defaultdict 및 람다 표현식 사용

Python에서 defaultdict 및 람다 표현식 사용

不言
풀어 주다: 2018-04-09 14:50:23
원래의
3117명이 탐색했습니다.

이 글은 주로 Python에서의 defaultdict와 람다 표현식의 사용법을 소개합니다. 여기에서 공유하겠습니다. 필요한 친구들이 참고할 수 있습니다.

이 글의 예제에서는 Python에서 defaultdict와 람다 표현식의 사용법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

튜토리얼에서 defaultdict가 클래스라고 보았지만 Python 2.7.6이 설치된 컴퓨터에서 사용하면 존재하지 않는 것으로 나타났습니다. . 문서를 검색했지만 찾을 수 없었기 때문에 이것이 Python 3.X에만 해당될 수 있다고 당연하게 여겼습니다. 튜토리얼은 Python 3.X를 기반으로 하기 때문입니다. 나중에 Python 3.X가 설치된 컴퓨터로 변경했지만 여전히 문제가 발생했습니다.

인터넷에 접속해보니 이 클래스가 실제로 collections 모듈에 있는 클래스라는 것을 알았습니다. 학습을 위한 온라인 환경을 없애기가 어려운 것 같아요!

이 클래스는 메서드를 재정의하고 이벤트 변수를 추가하는 dict의 하위 클래스입니다. 인스턴스화 중에 첫 번째 매개변수는 default_factory의 초기화 함수에 제공됩니다. 이 매개변수는 유형일 수도 있고 함수일 수도 있습니다. 실제로 유형은 기본적으로 팩토리 함수입니다. 그러나 때로는 이 방법을 사용하여 상수를 전달하고 싶을 때도 있습니다. 이 경우에는 상수 함수를 별도로 설계하거나 람다 식을 직접 사용해야 합니다.

먼저 다음 데모를 살펴보세요.

>>> fromcollections import defaultdict
>>> c1 =defaultdict(int)
>>>c1.get(123)
>>>c1.get('abc')
>>> defConst():
return 23
>>> c2 =defaultdict(Const)
>>>c2.get(123)
>>> c2
defaultdict(<functionConst at 0x000001D7E26F58C8>, {})
>>>c2[123]
23
>>>c2[&#39;abc&#39;]
23
>>>c1[123]
0
로그인 후 복사

위에서 볼 수 있듯이 이 메서드는 사전 개체에 존재하지 않는 키에 자동으로 기본값을 제공할 수 있습니다. 위의 방법을 사용하면 값이 상수라는 것을 자연스럽게 알 수 있지만 람다를 사용하면 코드가 더 간결해질 수 있습니다.

>>> c3 =defaultdict(lambda :123)
>>>c3[12]
123
로그인 후 복사

최근 사용 시나리오에서 이 방법을 사용하면 코드가 훨씬 간단해지고 더 간편해졌습니다. 익숙해진 후에도 코드의 가독성에는 영향을 미치지 않습니다.

관련 권장사항:

Python


위 내용은 Python에서 defaultdict 및 람다 표현식 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿