Python에서 사전은 키를 값으로 매핑하는 데 필수적인 데이터 구조입니다. 그러나 사전은 본질적으로 중복 키를 지원하지 않으므로 특정 유형의 데이터로 작업할 때 문제가 될 수 있습니다.
문제:
다음을 포함하는 텍스트 파일이 있다고 가정합니다. 아래와 같이 다양한 값을 가진 중복 자동차 등록 번호:
EDF768, Bill Meyer, 2456, Vet_Parking TY5678, Jane Miller, 8987, AgHort_Parking GEF123, Jill Black, 3456, Creche_Parking ABC234, Fred Greenside, 2345, AgHort_Parking ... EDF768, Jenny Meyer, 9987, Vet_Parking TY5678, Jo King, 8987, AgHort_Parking
등록 번호가 키인 사전을 생성하려고 합니다. 각 줄의 데이터는 값입니다. 그러나 표준 사전 구문을 사용하면 중복 키가 발견될 때 이전 값을 새 값으로 덮어씁니다.
해결책:
중복 키를 처리하려면 한 가지 일반적인 해결 방법이 있습니다. 컬렉션 모듈의 defaultdict를 사용하는 것입니다.
from collections import defaultdict data_dict = defaultdict(list)
중복 키에 단일 값을 할당하는 대신 해당 키와 관련된 목록에 새 값을 추가합니다.
data_dict[regNumber].append(details)
이렇게 하면 각 키가 값 목록에 해당하는 사전이 생성됩니다. 예:
data_dict = { 'EDF768': [ ('Bill Meyer', '2456', 'Vet_Parking'), ('Jenny Meyer', '9987', 'Vet_Parking'), ], 'TY5678': [ ('Jane Miller', '8987', 'AgHort_Parking'), ('Jo King', '8987', 'AgHort_Parking'), ], ... }
이렇게 하면 사전의 해당 목록에 액세스하여 특정 등록 번호와 관련된 모든 데이터에 액세스할 수 있습니다.
위 내용은 Python 사전을 생성할 때 중복 키를 어떻게 처리합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!