>백엔드 개발 >파이썬 튜토리얼 >Python에서 중첩된 사전 값에 안전하게 액세스하는 방법은 무엇입니까?

Python에서 중첩된 사전 값에 안전하게 액세스하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-18 13:05:031056검색

How to Access Nested Dictionary Values Safely in Python?

중첩 사전 값에 안전하게 액세스

Python에서 중첩 사전으로 작업할 때 오류를 방지하려면 값을 안전하게 검색하는 것이 중요합니다. 이를 달성하는 방법에는 여러 가지가 있습니다:

1. 중첩된 get() 호출

중첩된 사전에 두 번의 연속 get() 호출을 사용합니다.

<code class="python">example_dict.get('key1', {}).get('key2')</code>

이렇게 하면 'key1' 또는 'key2' 중 하나라도 None이 반환됩니다. 존재하지 않으며 중첩된 구조를 유지합니다.

2. try...제외 블록

KeyError 예외를 포착하기 위해 try...제외 블록을 사용합니다.

<code class="python">try:
    example_dict['key1']['key2']
except KeyError:
    pass</code>

이 방법은 작동하지만 첫 번째 누락된 키 이후에는 단락됩니다.

3. Hasher 클래스

Hasher 클래스를 __missing__() 메서드를 재정의하는 dict의 하위 클래스로 정의합니다.

<code class="python">class Hasher(dict):
    def __missing__(self, key):
        value = self[key] = type(self)()
        return value</code>

Hasher를 사용하면 KeyError를 발생시키지 않고 안전하게 중첩 값에 액세스할 수 있습니다. 대신 빈 해시를 반환합니다.

4. Safeget 도우미 함수

복잡성을 숨기는 도우미 함수 만들기:

<code class="python">def safeget(dct, *keys):
    for key in keys:
        try:
            dct = dct[key]
        except KeyError:
            return None
    return dct</code>

이 함수를 사용하면 중첩된 값에 안전하게 액세스하는 간결한 방법을 사용할 수 있습니다.

By 이러한 기술을 활용하면 중첩된 사전에서 값을 안전하게 검색하여 Python 코드의 견고성과 오류 처리를 보장할 수 있습니다.

위 내용은 Python에서 중첩된 사전 값에 안전하게 액세스하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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