>  기사  >  백엔드 개발  >  목록 값을 사용하여 Python 사전을 어떻게 반전시킬 수 있나요?

목록 값을 사용하여 Python 사전을 어떻게 반전시킬 수 있나요?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-31 05:55:01413검색

How Can I Invert a Python Dictionary with List Values?

목록 값을 사용하여 사전 반전: 포괄적인 솔루션

Python 프로그래밍 영역에서 사전은 키-값 쌍으로 데이터를 저장하는 데 없어서는 안 될 구조입니다. 가끔, 특히 값이 목록인 경우 사전을 반전해야 할 필요성이 발생합니다. 이 작업은 목록의 해시 불가능 특성으로 인해 어려움을 겪습니다. 그러나 이 장애물을 극복할 수 있는 간단한 솔루션이 있습니다.

목록 값이 있는 사전의 반전을 달성하려면 다음 스니펫을 활용할 수 있습니다.

<code class="python">inverse = {}
for k,v in index.items():
    for x in v:
        inverse.setdefault(x, []).append(k)</code>

이 접근 방식에서 외부 루프는 원래 사전의 키와 값을 반복합니다. 각 값(목록)에 대해 내부 루프는 해당 목록의 각 요소를 반복합니다. 발견된 각 요소에 대해 역사전의 동작은 다음 논리에 따라 결정됩니다.

  • 요소(x)가 역사전의 키로 이미 존재하는 경우 원래 사전(k)의 키 해당 값 목록에 추가됩니다.
  • 요소가 아직 키로 존재하지 않는 경우 빈 목록을 값으로 사용하여 새 키가 생성되고 원래 사전의 키가 이 새 키에 추가됩니다. list.

이 프로세스는 값(원래 키)이 키가 되고 키(원래 값)가 원래 키 목록으로 변환되어 원래 사전을 효과적으로 반전시킵니다. 결과 역사전에는 원하는 형식이 포함되어 있습니다.

위 내용은 목록 값을 사용하여 Python 사전을 어떻게 반전시킬 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.