커스텀 컨테이너(컨테이너)
이전 장의 소개 이후 우리는 Python에서 일반적인 컨테이너 유형이 dict, tuple, list, string이라는 것을 알았습니다. 컨테이너화된 컨테이너와 불변 컨테이너의 개념도 언급됩니다. 그 중 튜플과 스트링은 불변 컨테이너이고, 딕셔너리와 리스트는 가변 컨테이너이다. 변경 가능한 컨테이너와 불변 컨테이너의 차이점은 변경 불가능한 컨테이너에 값이 할당되면 그 안의 요소를 수정할 수 없다는 것입니다. 물론 자세한 소개를 보려면 사진과 텍스트가 포함된 이전 기사를 다시 읽어보면 됩니다.
먼저 질문이 있습니다. 이러한 데이터 구조가 우리가 개발하고 사용하기에 충분한가요? 충분하지 않거나 이러한 기본 용기만으로는 해결할 수 없는 특별한 요구 사항이 있는 경우 어떻게 해야 합니까?
이때 컨테이너를 커스터마이징해야 하는데 어떻게 해야 할까요?
| 함수 | 설명 |
| 사용자 정의 불변 컨테이너 유형 | __len__ 및 __getitem__ 메소드 정의 필요 |
| 사용자 정의 가변 유형 컨테이너 | 불변 컨테이너 유형을 기준으로 추가됨 정의 __setitem__ 및 __delitem__ |
| 사용자 정의 데이터 유형을 반복해야 합니다 | __iter__ |
| 사용자 정의 컨테이너의 길이를 반환해야 합니다. | __len__(self)를 구현해야 합니다. |
| 사용자 정의 컨테이너는 self[key]를 호출할 수 있습니다. 키 유형이 잘못되면 TypeError가 발생합니다. 키에 해당하는 값을 반환할 수 없으면 메서드에서 ValueError를 발생시켜야 합니다. | self[ key를 실행할 때 __getitem__(self, key)를 구현해야 합니다. ] = value |
| del self[key] 메소드가 실행될 때 | |
| 컨테이너가 컨테이너에서 x에 대해 실행되도록 하거나 iter(container)를 사용하려면 __iter__(self)를 구현해야 합니다. 이 메서드는 반복자를 반환합니다. 위의 마법 메서드를 사용하는 방법을 살펴보겠습니다. Haskell에서 데이터 구조를 구현합니다. 언어: | |
|
새로운 파일
시사
Clear
현재 코스웨어를 다운로드할 수 없습니다. 현재 직원들이 정리하고 있습니다. 앞으로도 본 강좌에 많은 관심 부탁드립니다~
이 강좌를 시청한 학생들도 학습하고 있습니다.
PHP로 사업을 시작하는 방법에 대해 간단히 이야기해 보겠습니다.
웹 프론트 엔드 개발에 대한 빠른 소개
민망한 물건 백과사전 사이트를 모방한 Mini 버전 MVC 프레임워크의 대규모 실용 Tianlongbabu 개발
PHP 실용 개발 시작하기: 빠른 PHP 생성 [중소기업 포럼]
로그인 인증 및 클래식 게시판
컴퓨터 네트워크 지식 수집
빠른 시작 Node.JS 정식 버전
당신을 가장 잘 이해하는 프론트엔드 강좌: HTML5/CSS3/ES6/NPM/Vue/...[원본]
자신만의 PHP MVC 프레임워크 작성(깊이 있는 40개 장/자세한 내용/초보자가 발전하려면 읽어야 함)
|
















현재 코스웨어를 다운로드할 수 없습니다. 현재 직원들이 정리하고 있습니다. 앞으로도 본 강좌에 많은 관심 부탁드립니다~ 