Python 사전 의 키 가 여러 값 을 비 추 는 방법(목록 이나 집합)
d = {
'a' : [1, 2, 3],
'b' : [4, 5]
}
e = {
'a' : {1, 2, 3},
'b' : {4, 5}
}
사용 목록 을 선택 하 느 냐 집합 을 선택 하 느 냐 는 실제 수요 에 달 려 있다.요소 의 삽입 순 서 를 유지 하려 면 목록 을 사용 해 야 합 니 다.중복 요 소 를 제거 하려 면 집합 을 사용 하 십시오(요소 의 순서 문제 에 관심 이 없습니다).collections 모듈 의 defaultdict 를 편리 하 게 사용 하여 이런 사전 을 만 들 수 있 습 니 다.defaultdict 의 특징 은 모든 key 가 처음에 대응 하 는 값 을 자동 으로 초기 화 하 는 것 입 니 다.따라서 요소 추가 작업 에 만 관심 을 가 져 야 합 니 다.
예 를 들 면:
from collections import defaultdict
d = defaultdict(list)
d['a'].append(1)
d['a'].append(2)
d['b'].append(4)
d = defaultdict(set)
d['a'].add(1)
d['a'].add(2)
d['b'].add(4)
주의해 야 할 것 은 defaultdict 가 접근 할 키(현재 사전 에 이러한 키 가 존재 하지 않 더 라 도)에 맵 실 체 를 자동 으로 만 듭 니 다.이러한 특성 이 필요 하지 않다 면 일반적인 사전 에서 setdefault()방법 으로 대체 할 수 있 습 니 다.예 를 들 면:
d = {} # A regular dictionary
d.setdefault('a', []).append(1)
d.setdefault('a', []).append(2)
d.setdefault('b', []).append(4)
그러나 많은 프로그래머 들 은 setdefault()을 사용 하기 가 좀 어색 하 다 고 생각한다.호출 할 때마다 새로운 초기 값 의 인 스 턴 스 를 만들어 야 하기 때 문 입 니 다(예 프로그램의 빈 목록[]).토론 하 다.
일반적으로 다 중 맵 사전 을 만 드 는 것 은 간단 하 다.하지만 자신 이 이 루 는 것 을 선택 하면 값 초기 화 에 문제 가 있 을 수 있 습 니 다.아래 와 같이 이 루어 질 수 있 습 니 다.
d = {}
for key, value in pairs:
if key not in d:
d[key] = []
d[key].append(value)
defaultdict 를 사용 하면 코드 가 더욱 간결 해 집 니 다.
d = defaultdict(list)
for key, value in pairs:
d[key].append(value)
이 Python 사전 의 키 가 여러 값 을 매 핑 하 는 방법(목록 이나 집합)은 바로 작은 편집 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.참고 하 시기 바 랍 니 다.여러분 들 도 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.