0% ont trouvé ce document utile (0 vote)
3 vues12 pages

Les Dictionnaires Python - Guide Complet

Le document présente une introduction aux dictionnaires en Python, expliquant leur structure clé-valeur, leur mutabilité, et les opérations de création, manipulation et accès. Il aborde également les dictionnaires imbriqués, les comparaisons avec d'autres structures de données, ainsi que des techniques d'optimisation et les nouveautés introduites dans les versions récentes de Python. Enfin, il fournit des conseils sur les bonnes pratiques et les cas d'utilisation des dictionnaires.

Transféré par

ilyashabchane
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
3 vues12 pages

Les Dictionnaires Python - Guide Complet

Le document présente une introduction aux dictionnaires en Python, expliquant leur structure clé-valeur, leur mutabilité, et les opérations de création, manipulation et accès. Il aborde également les dictionnaires imbriqués, les comparaisons avec d'autres structures de données, ainsi que des techniques d'optimisation et les nouveautés introduites dans les versions récentes de Python. Enfin, il fournit des conseils sur les bonnes pratiques et les cas d'utilisation des dictionnaires.

Transféré par

ilyashabchane
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Introduction aux dictionnaires

Python

dictionnaire = {
"clé1": "valeur1",
"clé2": "valeur2",
"clé3": "valeur3"
}

key Structure clé-valeur access_time Accès rapide


Paires clé: valeur uniques Complexité O(1) en moyenne

edit Mutable shuffle Non ordonné


Modifiable après création Pas d'ordre garanti (Python < 3.7)
Création et manipulation de
dictionnaires
add_circle Création add Ajout
dict = { dict["ville"] = "Paris"
"nom": "Alice", [Link]({"pays":
"âge": 25 "France"})
}

edit Modification delete Suppression


dict["âge"] = 26 del dict["âge"]
[Link]("ville")

search Accès check_circle Vérification


dict["nom"] "nom" in dict
[Link]("âge", 0) "téléphone" not in dict
Méthodes et opérations utiles
list Itération visibility Accès aux clés/valeurs
for key in dict: [Link]()
for key, value in [Link]()
[Link](): [Link]()

find_replace Recherche compare_arrows Fusion


[Link](key, default) [Link](dict2)
[Link](key, new_dict = {**dict1,
default) **dict2}

content_copy Copie calculate Opérations avancées


dict_copy = [Link]() [Link]()
dict_copy = [Link](key)
[Link](keys, [Link]()
value)
Cas d'utilisation et bonnes
pratiques
data_object k d d é map
Dictionnaires imbriqués
layers Création
users = {
"user1": {
"nom": "Alice",
"âge": 25
},
"user2": {
"nom": "Bob",
"âge": 30
}
}

touch_app Accès
# Accès direct
nom = users["user1"]["nom"]

# Avec get() pour éviter les erreurs


âge = [Link]("user1", {}).get("âge", 0)

edit Modification
# Modifier une valeur existante
users["user1"]["âge"] = 26

# Ajouter une nouvelle clé


users["user1"]["email"] = "alice@[Link]"
loop Itération
Comparaison des structures de
données

Structure Accès Mutable Ordonné Utilisation

data_object check_circle (Python


Dictionnaire
O(1) (clé) check_circle ≥ 3.7)
Clé-valeur

O(1) Collection
list Liste (index) check_circle check_circle ordonnée

O(1) Données
view_array Tuple (index) cancel check_circle immuables

O(1) Éléments
category Ensemble (élément) check_circle cancel uniques
trending_up Avantages du dictionnaire compare_arrows Quand utiliser
Techniques d'optimisation
speed Compréhensions memory Pré-allocation
result = {k: f(v) for dict = {i: 0 for i in
k, v in items if range(1000)}
condition}
Évite les redimensionnements
Plus rapide que les boucles fréquents
traditionnelles

cached Mémoïsation view_module defaultdict


cache = {} from collections import
if key not in cache: defaultdict
cache[key] = d = defaultdict(list)
expensive_function(key) d[key].append(value)
Évite les calculs répétitifs Évite les vérifications de clés

format_list_numbered Counter merge_type Fusion efficace


from collections import result = {**dict1,
Counter **dict2}
counts = result = dict1 | dict2
Counter(iterable) # Python 3.9+
Comptage efficace d'éléments Fusion rapide de dictionnaires
Nouveautés des dictionnaires
new_releases Ordre préservé 3.7+ merge_type Opérateur de fusion 3.9+

Les dictionnaires conservent Fusion de dictionnaires avec


l'ordre d'insertion l'opérateur |
d = {"c": 3, "a": 1, d1 = {"a": 1, "b": 2}
"b": 2} d2 = {"b": 3, "c": 4}
# Maintient l'ordre: c, result = d1 | d2 #
a, b {'a': 1, 'b': 3, 'c':
4}

update Opérateur de mise à 3.9+


speed Performance 3.6+
jour améliorée
Mise à jour avec l'opérateur |= Nouvelle implémentation plus
d1 = {"a": 1, "b": 2} compacte et rapide
d2 = {"b": 3, "c": 4} -20% d'utilisation mémoire
d1 |= d2 # d1 devient +25% plus rapide pour les
{'a': 1, 'b': 3, 'c': opérations courantes
4}

sync_alt dict_reversed() 3.8+ code dict.__ior__() 3.9+

Itération inversée des clés Support de l'opérateur |= pour


d = {"a": 1, "b": 2, la mise à jour en place
"c": 3} d = {"a": 1}
for k in reversed(d): d.__ior__({"b": 2})
print(k) # c, b, a # Équivalent à d |=
{"b": 2}
Merci pour votre attention

help_outline Des questions ?

Développé par
Ilyas Habchane Mounia Housni Hichame Kabraoui Soukaina Saadi

Vous aimerez peut-être aussi