Maison > développement back-end > Tutoriel Python > Comment accéder aux dictionnaires Python imbriqués avec une syntaxe de style objet ?

Comment accéder aux dictionnaires Python imbriqués avec une syntaxe de style objet ?

Linda Hamilton
Libérer: 2024-11-12 05:49:02
original
1071 Les gens l'ont consulté

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

Comment accéder aux dictionnaires Python imbriqués avec une syntaxe de style objet

Lorsque vous travaillez avec des dictionnaires imbriqués en Python, il peut être fastidieux d'accéder aux données à l'aide de clés. C'est là que se pose le besoin d'une syntaxe de style objet.

À partir de Python 2.6, la structure de données nommée tuple offre une solution. Les tuples nommés permettent de créer des tuples avec des attributs nommés, facilitant ainsi l'accès aux données à l'aide de la syntaxe des attributs. Par exemple :

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']
Copier après la connexion

Une approche alternative peut être implémentée à l'aide d'une classe personnalisée :

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
Copier après la connexion

Les tuples nommés et les classes personnalisées fournissent une solution élégante pour accéder aux dictionnaires imbriqués en Python à l'aide d'objets. syntaxe de style. Considérez la structure de données appropriée pour votre cas d'utilisation spécifique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal