Python 사전에서 키 이름을 어떻게 바꾸나요?

DDD
풀어 주다: 2024-11-02 13:15:02
원래의
461명이 탐색했습니다.

How do you Rename Keys in Python Dictionaries?

사전 키 이름 바꾸기: 포괄적인 솔루션

Python 사전은 키-값을 효율적으로 저장하고 검색할 수 있는 다목적 데이터 구조입니다. 한 쌍. 그러나 특정 시나리오에서는 값을 변경하거나 사전 구성을 방해하지 않고 키 이름을 바꿔야 할 수도 있습니다. 이 질문은 이 문제를 다루고 일반 사전과 OrderedDicts 모두에 맞는 다양한 솔루션을 제공합니다.

Regular Dict

일반 사전의 경우 간단한 접근 방식은 이전 키를 제거하는 pop() 메서드와 새 키에 값을 할당하는 [] 연산자:

<code class="python">mydict["k_new"] = mydict.pop("k_old")</code>
로그인 후 복사

이 작업은 k_new가 이미 존재하지 않는 한 항목을 사전의 끝으로 효과적으로 이동합니다. 이 경우 해당 값을 덮어씁니다.

OrderedDict

Python 3.7에 도입된 OrderedDict는 키-값 쌍의 삽입 순서를 유지합니다. 순서를 유지하면서 키 이름을 바꾸려면:

<code class="python">OrderedDict((k_new if k == k_old else k, v) for k, v in od.items())</code>
로그인 후 복사

생성기 표현식을 사용하여 새 키에 값을 다시 할당하여 순서가 유지되도록 합니다.

Python 3.7 Dict에서 순서 유지

Python 3.7 사전은 기본적으로 삽입 순서를 유지합니다. 이 순서를 유지하면서 키 이름을 바꾸려면:

<code class="python">d = {0:0, 1:1, 2:2, 3:3}
{k: v for k, v in d.items() if k != k_old} | {k_new: d[k_old]}</code>
로그인 후 복사

키 자체 수정

키 자체 수정에 대한 질문입니다. 그러나 Python에서는 키가 해시 가능하고 불변이므로 직접 키 수정이 불가능합니다. 그러나 원하는 키 이름으로 값을 다시 할당하고 이전 키를 제거하면 사전은 그대로 유지되므로 키를 직접 수정하지 않고도 효과적으로 키의 "이름을 바꿀 수 있습니다".

위 내용은 Python 사전에서 키 이름을 어떻게 바꾸나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!