UserDict
, dict
및 ABC
의 차이점은 무엇입니까? 문서가 UserDict
을 비추천입니까?하위 클래스 dict : UserDict, dict 또는 ABC?
또한 은 아니지만 UserDict의 update()
은 내 setitem
방법을 사용하는 것 같습니다. 어느 메서드가 실제로 사용자 정의 setitem
및 getitem
기능을 원한다면 재정의하는 데 필수적입니까?
ABC
s 기본 구현을 제공하지 않으므로 절대적으로 모든 메소드를 구현해야합니다.
나는 두 가지 않는다는 dict
을 만들고 싶어 :
intern()
모든 키와 SQLite 데이터베이스
에
UserDict
, dict
ABC
을 사용하면이 작업을 수행하는 것이 가장 좋습니다.
그러나 적어도 일부 ABC는 내장 된 유형을 기반으로하지 않는 구현을 단순화하는 데 유용합니다. 동일한 섹션의이 스 니펫은 다음과 같이 표시합니다. '일부 ABC는 믹스 인으로도 유용하여 쉽게 사용할 수 있습니다 컨테이너 API를 지원하는 클래스를 개발한다. 예를 들어 전체 Set API를 지원하는 클래스를 작성하려면 __contains __(), __iter __() 및 __len __()의 세 가지 기본 추상 메서드 만 제공하면됩니다. ABC는 __ 및 __() 및 isdisjoint()와 같은 나머지 메서드를 제공합니다. – delnan
무언가가 "dict"인지 테스트하려면 'isistance (x, dict)'를 사용하십시오. 테스트하고 싶다면 'isinstance (x, Mapping)'을 사용하십시오. 이것은 ABC가있는 것입니다. 그것들은 모든 종류의 매핑이'Mapping.register()'를 사용하거나 그것을 직접적으로 하위 클래스로 사용하는 경우에만 유용합니다. 그리고 네, ** ** ABC의 주된 목적입니다. –