>  기사  >  백엔드 개발  >  객체 스타일 구문으로 중첩된 Python 사전에 액세스하는 방법은 무엇입니까?

객체 스타일 구문으로 중첩된 Python 사전에 액세스하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-12 05:49:021017검색

How to Access Nested Python Dictionaries with Object-Style Syntax?

객체 스타일 구문으로 중첩 Python 사전에 액세스하는 방법

Python에서 중첩 사전을 사용하여 작업할 때 데이터에 액세스하는 것이 번거로울 수 있습니다. 키를 사용하여. 이것이 객체 스타일 구문의 필요성이 발생하는 곳입니다.

Python 2.6 이상에서는 명명된 튜플 데이터 구조가 솔루션을 제공합니다. Namedtuples를 사용하면 명명된 속성이 있는 튜플을 생성할 수 있으므로 속성 구문을 사용하여 데이터에 쉽게 액세스할 수 있습니다. 예를 들면 다음과 같습니다.

from collections import namedtuple

MyStruct = namedtuple('MyStruct', 'a b d')
s = MyStruct(a=1, b={'c': 2}, d=['hi'])

print(s.a)   # Output: 1
print(s.b)   # Output: {'c': 2}
print(s.c)   # Error: AttributeError: 'MyStruct' has no attribute 'c' since it's not defined in the tuple
print(s.d)   # Output: ['hi']

사용자 정의 클래스를 사용하여 대체 접근 방식을 구현할 수 있습니다.

class Struct:
    def __init__(self, **entries):
        self.__dict__.update(entries)

args = {'a': 1, 'b': 2}
s = Struct(**args)

print(s.a)   # Output: 1
print(s.b)   # Output: 2

네임드튜플과 사용자 정의 클래스 모두 객체를 사용하여 Python의 중첩 사전에 액세스하는 우아한 솔루션을 제공합니다. 스타일 구문. 특정 사용 사례에 적합한 데이터 구조를 고려하세요.

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

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