Найти в Дзене
SCIENCE IT

Dictionaries

https://as2.ftcdn.net/jpg/02/19/60/81/500_F_219608173_yaQu3WIbA6n2NwxwMfqRo8Ft3Sdwqn0e.jpg
https://as2.ftcdn.net/jpg/02/19/60/81/500_F_219608173_yaQu3WIbA6n2NwxwMfqRo8Ft3Sdwqn0e.jpg

Un autre type utile de données intégrées dans Python est le Dictionnaire (voir Types de mappage). Les dictionnaires peuvent être trouvés dans d'autres langues telles que "mémoire associative" ou "tableaux associatifs". Contrairement aux séquences qui peuvent être indexées par des nombres, les dictionnaires peuvent être indexés par des clés, dont n'importe quel type non modifiable peut servir de clé, peut toujours être formé par des chaînes et des nombres. Les tuples peuvent être utilisés comme clés s'ils ne sont constitués que de chaînes, de chiffres ou de tuples ; si un tuple contient directement ou indirectement un objet modifiable, il ne peut pas être utilisé comme clé. Les listes ne peuvent pas être utilisées comme clés parce qu'elles sont directement modifiables, soit par assignation d'index, assignation de section ou méthodes telles que append() et extend().

Il est préférable de considérer les dictionnaires comme un ensemble non ordonné de clés : des paires de valeurs, avec l'exigence que les clés d'un dictionnaire soient uniques. Une paire de jarretelles bouclées crée un dictionnaire vide : {}.

Les principales opérations effectuées sur un dictionnaire sont le stockage d'une valeur sous une clé et la récupération d'une valeur avec la clé donnée. Il est également possible de supprimer un couple clé-valeur avec del. Si vous enregistrez une valeur sous une clé déjà utilisée, vous écrasez l'ancienne valeur précédemment associée à cette clé. Le désir de récupérer une valeur avec une clé inexistante génère un message d'erreur.

Rappeler la liste(d.keys()) à un dictionnaire retourne une liste de toutes les clés dans un ordre aléatoire (si vous voulez les trier, utilisez plutôt les clés triées(d.keys())). 2] Pour vérifier s'il n'y a qu'une seule clé dans le dictionnaire, vous pouvez utiliser le mot clé entré.

Voici un petit exemple d'utilisation des dictionnaires :

>>> {\an898,'vous savez' : 4139}
>>> Sous-titres par MemoryOnSmells ;
Tél. >>> Tél.
4139, "Je conduis" 4127, "Jack" 4098.
>>> Sous-titres par MemoryOnSmells ;
4098
# Le tél['sa']
>>> Sous-titres par MemoryOnSmells ;
Tél. >>> Tél.
4127, "Irv" : 4127, "Jack" : 4098.
liste >>>>>(clés tel.key()))
('irv','guido','jack')
>>>>> ranger (touches tel.key())
('guido','irv','jack')
>>>>> Je conduis en tél.
fidèle
>>>>> Jack n'est pas dans le tél.
faux

Le constructeur dict() crée des dictionnaires directement à partir de séquences de paires clé-valeur :

>>>> dict([(((('sape', 4139), ('guido', 4127), ('jack', 4098)))))
Sape : 4139, Jack : 4098, Guido : 4127.

De plus, "Dict Comprehensions" peut être utilisé pour créer des dictionnaires d'expressions clés et de valeurs arbitraires :

>>> {x : x**2 pour x in (2, 4, 6, 6, 6)
{2 : 4, 4 : 16, 6 : 36}

Si les clés sont des chaînes de caractères simples, il est parfois plus facile de spécifier des paires comme arguments de mots-clés :

>>>> dict(sape=4139, guido=4127, jack=4098)
Sape : 4139, Jack : 4098, Guido : 4127.

Techniques de meulage

Lors de l'itération dans les dictionnaires, la clé et la valeur correspondante peuvent être récupérées simultanément par la méthode items().

>>> Chevaliers = {'Gallahad':'le pur','Robin':'le brave' }
>>> pour k, v dans knights.items() :
... print(k, v)
...

Gallahad le plus pur

Robin le brave

Si vous itérez sur une séquence, l'index et l'objet correspondant peuvent être récupérés simultanément en utilisant la fonction énumérer().

>>>>> pour i, v en énumération (['tic','tac','tac','toe']) :
... impression(s), v)
0 tic
1 tac
2 doigts

Pour itérer sur plusieurs séquences à la fois, les entrées peuvent être groupées à l'aide de la fonction zip().

>>> Questions = ['Nom','Ordre'].
>>> Réponses = ['Lancelot','la recherche du Saint Graal'].
>>> pour q, a in zip (questions, réponses) :
.... print('Quel est votre {0} ? Il est {1}.'.format(q, a))))

Quel est votre nom ? C'est Lancelot.

Quelle est votre mission ? C'est la recherche du Saint Graal.

Pour itérer à travers une séquence dans l'ordre inverse, spécifiez d'abord la séquence dans l'ordre correct, puis appelez la fonction reverse().

>>> Pour i dans l'ordre inverse (gamma (1, 10, 2)) :
... impression(s)
...
9
7
5
3
1

Pour itérer sur une séquence ordonnée, il y a la fonction triée(), qui retourne une nouvelle liste ordonnée, mais ne touche pas la séquence originale.

>>> poubelle = ['pomme','orange','pomme','pomme','pomme','poire','orange','banane'].
>>> pour f dans l'ordre (set) :
.... print(f)
pomme
banane
poire
orange

Autres informations sur les conditions

Les conditions utilisées dans le temps et si les déclarations peuvent contenir n'importe quel opérateur, pas seulement des comparaisons.

L'opérateur est et n'est pas comparé pour l'identité de l'objet, c'est-à-dire si deux objets sont identiques, mais ceci n'est important que pour les objets modifiables comme les listes. Tous les opérateurs de comparaison ont la même priorité, qui est inférieure à celle des opérateurs numériques.

Les comparaisons peuvent être concaténées. Par exemple, a < b ==== c vérifie si a est inférieur à b et b est c.

https://as1.ftcdn.net/jpg/01/97/80/78/500_F_197807807_bQiXYYM9RD5fX6wejTzQD4yEw0YDdeu5.jpg
https://as1.ftcdn.net/jpg/01/97/80/78/500_F_197807807_bQiXYYM9RD5fX6wejTzQD4yEw0YDdeu5.jpg