Programme Python pour comparer des éléments dans deux dictionnaires

王林
Libérer: 2023-08-20 19:25:06
avant
1611 Les gens l'ont consulté

Programme Python pour comparer des éléments dans deux dictionnaires

Les dictionnaires sont un type de données puissant en Python qui vous permet de stocker des données sous forme de paires clé-valeur. Dans cet article, nous verrons comment comparer des éléments dans deux dictionnaires en Python. éléments du dictionnaire et fournira des exemples de la façon de procéder.

Dictionnaires en Python

En Python, un dictionnaire peut être créé en plaçant une série d'éléments entre accolades { }, séparés par des virgules (,). Les dictionnaires contiennent des paires clé-valeur, l’une étant la clé et l’autre la valeur correspondante.

Les valeurs d'un dictionnaire peuvent être de n'importe quel type de données et peuvent être dupliquées, tandis que les clés ne peuvent pas être répétées et doivent être immuables et uniques. Le nom des clés dans un dictionnaire est sensible à la casse. Le dictionnaire peut également être créé par le. fonction intégrée dict(). Un dictionnaire vide peut être créé en le plaçant simplement entre accolades { }.

Nous pouvons déclarer un dictionnaire de la manière suivante −

thisdict = { "brand": "Ford", "model": "Mustang", year": 1964 }
Copier après la connexion

Dans cet article, nous verrons comment comparer des éléments de deux dictionnaires en Python en utilisant 3 méthodes différentes.

Utilisez l'opérateur de signe égal ( = = )

Dans cette méthode, nous utiliserons l'opérateur de comparaison double signe égal pour comparer deux chaînes. L'opérateur == renvoie vrai lorsque les côtés gauche et droit de l'opérateur sont égaux et renvoie faux lorsqu'ils ne sont pas égaux.

Si les 2 dictionnaires qui nous sont donnés sont égaux et identiques entre eux, cet opérateur retournera vrai et on pourra conclure que les deux dictionnaires sont égaux et il retournera faux s'ils ne sont pas égaux.

Exemple

Dans l'exemple ci-dessous, nous utilisons l'opérateur == pour comparer 2 dictionnaires

dict1 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'mango' }
dict2 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'grapes'}
if dict1 == dict2:
   print (" dict1 is equal to dict2 ")
else:
   print (" dict1 is not equal to dict2 ")
Copier après la connexion

Sortie

La sortie du code ci-dessus sera –

dict1 is not equal to dict2
Copier après la connexion
Copier après la connexion

Comparez deux dictionnaires à l'aide d'une boucle

Dans cette méthode, nous comparerons les éléments de deux dictionnaires un par un, en itérant la longueur d'un dictionnaire et à chaque itération en vérifiant la clé et la valeur dans le dictionnaire correspondant par rapport à la paire clé et valeur correspondante dans l'autre dictionnaire.

Nous vérifierons également la longueur des deux dictionnaires et s'ils ne sont pas identiques, nous pourrons directement conclure que les deux dictionnaires ne sont pas égaux. Pour obtenir la valeur correspondant à une clé dans le dictionnaire, on utilise la fonction .get, qui donne la valeur de la clé en argument.

Exemple

Dans l'exemple ci-dessous, nous le ferons.

dict1 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'mango' }
dict2 = { 'first' : 'banana' , 'second' : 'guava' , 'third' : 'grapes'}
if len (dict1) != len (dict2):
    print ("The dictionaries are not equal ")
else:
    flag=0
    for i in dict1:
        if dict1.get(i) != dict2.get(i):
            flag=1
            break
    if flag==0:
        print (" dict1 is equal to dict2 ")
    else:
        print (" dict1 is not equal to dict2 ")
Copier après la connexion

Sortie

Le résultat du programme ci-dessus est le suivant :

dict1 is not equal to dict2
Copier après la connexion
Copier après la connexion

Utilisez la méthode de compréhension de liste

Dans cette méthode, nous utiliserons la compréhension de liste pour comparer deux dictionnaires. La compréhension de liste est un moyen plus court d'écrire une boucle for dans une liste, un tuple ou un dictionnaire. Dans cette méthode, nous allons parcourir l'un des dictionnaires et comparer les valeurs. pour la même clé dans les deux dictionnaires, les dictionnaires sont identiques ou non. S'ils sont identiques, les dictionnaires seront égaux et non identiques

.

Exemple

Le code python ci-dessous montre comment nous pouvons utiliser la compréhension de liste pour comparer deux dictionnaires donnés et imprimer le résultat.

dict1 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'mango' }
dict2 = { 'first' : 'banana' , 'second' : 'guava' , 'third' : 'grapes' }
ans = all ( dict2.get (key) == value for key , value in dict1.items() )
if ans == 'true':
   print ("dict1 and dict2 are equal")
else:
   print ("dict1 and dict2 are not equal")
Copier après la connexion

Sortie

Le résultat du code ci-dessus est le suivant :

dict1 and dict2 are not equal
Copier après la connexion

Conclusion

Dans cet article, nous avons découvert les dictionnaires en python, où nous pouvons utiliser des dictionnaires. Nous avons également appris comment comparer 2 dictionnaires donnés. Nous sommes tombés sur 3 méthodes différentes pour comparer 2 dictionnaires.

La première méthode impliquait l'utilisation de l'opérateur d'égalité ( ==). La deuxième méthode impliquait l'utilisation d'une itération pour vérifier chaque paire clé-valeur des deux dictionnaires. Dans la méthode finale, nous avons utilisé la méthode de compréhension de liste de Python pour parcourir la clé. paire de valeurs d'un dictionnaire et vérifiez les valeurs des clés dans les deux dictionnaires et comparez-les

.

La complexité temporelle de la 1

ère approche est O (1) car elle utilise une comparaison simple alors que les 2 autres méthodes ont une complexité temporelle de O (n) où n est la longueur du dictionnaire..

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:tutorialspoint.com
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal