python - 如何为一个dict字典进行多层级赋值?
ringa_lee
ringa_lee 2017-04-18 10:07:26
0
2
1536
ringa_lee
ringa_lee

ringa_lee

모든 응답(2)
大家讲道理

이 구조를 직접 구현할 수 있습니다.
다음 예에서 AutoVivification은 dict에서 상속됩니다

으아아아

다음과 같이 AutoVivification을 사용할 수 있습니다.

으아아아

출력:

으아아아

또한 AutoVivification의 또 다른 구현 방법이 있는데, 이는 dict의 __missing__ 매직 메서드를 직접 오버로드하는 것입니다. 확장이라고 생각하시면 됩니다.

으아아아

한 가지 더, Python 2.5 이후 버전에는 더 확장 가능한 dict 유형을 사용자 정의할 수 있는 collections.defaultdict 유형이 추가되었습니다.
문서에는 구현 원칙이 __missing__ 메서드를 오버로드하는 것이라고 명시되어 있습니다. AutoVivification은 다음과 같이 표현할 수도 있습니다.

으아아아

defaultdict는 첫 번째 매개변수가 default_factory인 dict 유형을 구성합니다. __missing__가 호출되면 반환 값은 default_factory를 사용하여 구성됩니다.
defaultdict의 추가 예

洪涛

defaultdict 패키지 사용법을 첨부하겠습니다:

으아아아

출력:

으아아아

이렇게 하면 원하는 효과를 얻을 수 있습니다.

보충:
defaultdict()는 기본 매개변수를 받습니다. 이 매개변수는 유형 이름이거나 매개변수 없이 호출 가능한 함수일 수 있습니다.
이는 매우 유용합니다

으아아아

출력:

으아아아
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿