Maison > développement back-end > Tutoriel Python > Comment puis-je utiliser la notation par points pour accéder aux membres d'un dictionnaire Python ?

Comment puis-je utiliser la notation par points pour accéder aux membres d'un dictionnaire Python ?

Barbara Streisand
Libérer: 2024-11-14 20:31:02
original
981 Les gens l'ont consulté

How can I use dot notation to access members of a Python dictionary?

Accès aux membres du dictionnaire via la notation par points en Python

Les dictionnaires Python fournissent généralement un accès à leurs membres à l'aide de crochets ([]). Pour activer la notation par points (.) pour accéder aux membres, envisagez l'approche suivante :

Utilisation de la classe dotdict :

Une solution courante consiste à créer une classe personnalisée appelée dotdict, qui étend la classe dict intégrée. Cette classe fournit les méthodes getattr__, __setattr__ et __delattr nécessaires pour prendre en charge l'accès à la notation par points.

Voici un exemple d'implémentation :

class dotdict(dict):
    """dot.notation access to dictionary attributes"""
    __getattr__ = dict.get
    __setattr__ = dict.__setitem__
    __delattr__ = dict.__delitem__
Copier après la connexion

Utilisation de dotdict :

Pour utiliser dotdict, convertissez vos dictionnaires existants en instances de la classe dotdict. Cela permet d'accéder aux membres en utilisant la notation par points :

mydict = {'val':'it works'}
nested_dict = {'val':'nested works too'}
mydict = dotdict(mydict)
mydict.val
# 'it works'

mydict.nested = dotdict(nested_dict)
mydict.nested.val
# 'nested works too'
Copier après la connexion

En utilisant dotdict, vous pouvez facilement accéder aux membres du dictionnaire en utilisant la notation par points plus intuitive. Les dictionnaires imbriqués sont également accessibles de cette manière en créant des instances dotdict imbriquées.

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