Maison  >  Article  >  développement back-end  >  Application du dictionnaire de valeurs par défaut en Python et comment utiliser defaultdict

Application du dictionnaire de valeurs par défaut en Python et comment utiliser defaultdict

王林
王林avant
2023-04-23 11:52:071190parcourir

En Python, defaultdict est un type spécial de dictionnaire qui peut définir automatiquement des valeurs par défaut pour les clés qui n'existent pas dans le dictionnaire. Les dictionnaires de ce type sont définis dans le module collections. Il nous fournit un dictionnaire plus pratique et plus facile à utiliser.

1. Importer defaultdict

Nous devons d'abord importer le module de collections contenant defaultdict. Ceci peut être réalisé en ajoutant la ligne de code suivante en haut de votre code Python :

from collections import defaultdict

2. Créez un defaultdict

Créer un defaultdict est syntaxiquement identique à la création d'un dictionnaire Python. Il suffit d'utiliser le type de defaultdict comme paramètre du constructeur. Par exemple, si nous voulons créer un defaultdict qui stocke des entiers, nous pouvons utiliser le code suivant :

int_dict = defaultdict(int)

Si nous voulons stocker des chaînes dans le defaultdict, nous pouvons utiliser le code suivant :

str_dict = defaultdict(str)

Dans les deux cas, nous passons Le constructeur defaultdict transmet le type pour définir une nouvelle instance defaultdict. Ce type sera défini sur la valeur par défaut correspondante pour toutes les clés de defaultdict.

3. Utilisation de defaultdict

Lorsque vous essayez d'accéder à une clé de defaultdict, si la clé n'existe pas, la valeur par défaut correspondant au type passé au constructeur est automatiquement définie. Par exemple, dans le code ci-dessous, nous utilisons defaultdict pour stocker l'âge d'une personne et définissons la valeur par défaut sur 0 :

age_dict = defaultdict(int)
age_dict['alice'] = 25
age_dict['bob'] = 30
age_dict['charlie']
print(age_dict)

Le résultat sera {‘alice’ : 25, «bob’ : 30, «charlie’ : 0}, lorsque «charlie’ n'est pas dans le dictionnaire par défaut, il est automatiquement rempli avec la valeur par défaut 0.

Dans cet exemple, nous avons ajouté deux clés au dictionnaire par défaut, «alice’ et «bob’, et avons directement interrogé une autre clé, «charlie’ Puisque «charlie’ n'existe pas dans le dictionnaire, defaultdict définit automatiquement la valeur correspondant à cette clé à la valeur par défaut du type correspondant passé dans le constructeur (dans ce cas, l'entier 0). On voit que c’est bien le résultat attendu.

4. Ajouter la valeur par défaut de defaultdict

Nous pouvons également définir une valeur par défaut en fournissant une fonction comme valeur par défaut à la fonction defaultdict. Cette fonction sera appelée si une clé est manquante dans le dictionnaire et renvoie la valeur par défaut souhaitée. Par exemple, nous pouvons définir une fonction qui prend une clé d'un dictionnaire comme valeur par défaut en utilisant le code suivant :

def return_key():
    return "unknown"

key_dict = defaultdict(return_key)
key_dict['apple'] = 'fruit'
print(key_dict['pear'])
print(key_dict['banana'])

La sortie sera :

unknown
unknown

Dans cet exemple, nous avons défini une fonction return_key () , qui renvoie simplement "inconnu". Ensuite, nous créons un dictionnaire par défaut et le définissons en utilisant cette fonction comme valeur par défaut. Lorsque nous essayons d'accéder aux touches "poire" et "banane", nous obtenons la valeur par défaut "inconnu". Cependant, lorsque nous avons ajouté la clé « pomme » au dictionnaire, nous avons obtenu « fruit ».

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer