ホームページ >バックエンド開発 >Python チュートリアル >オブジェクトスタイル構文を使用して入れ子になった Python 辞書にアクセスする方法

オブジェクトスタイル構文を使用して入れ子になった Python 辞書にアクセスする方法

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-12 05:49:021097ブラウズ

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

オブジェクト スタイル構文を使用してネストされた Python 辞書にアクセスする方法

Python でネストされた辞書を操作する場合、データにアクセスするのが面倒になる場合がありますキーを使用して。ここで、オブジェクト スタイルの構文が必要になります。

Python 2.6 以降では、namedtuple データ構造が解決策を提供します。名前付きタプルを使用すると、名前付き属性を持つタプルを作成できるため、属性構文を使用してデータに簡単にアクセスできます。例:

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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。