Vous définissez un dictionnaire dans un ordre spécifique et souhaitez maintenir cet ordre lorsque vous y accédez ou que vous le parcourez.
Commencer avec Python 3.6, les dictionnaires conservent intrinsèquement l'ordre d'insertion par défaut. Ceci est réalisé à l'aide d'une table de hachage basée sur un tableau où les clés et les valeurs sont stockées dans l'ordre dans lequel elles sont ajoutées.
Par exemple, la déclaration de dictionnaire suivante conservera l'ordre des clés :
d = {'ac': 33, 'gw': 20, 'ap': 102, 'za': 321, 'bs': 10}
Ce comportement était initialement un détail d'implémentation dans Python 3.6. Cependant, dans Python 3.7, il est devenu une spécification de langage, garantissant que toutes les implémentations Python maintiennent l'ordre des dictionnaires.
L'utilisation de dictionnaires avec un ordre préservé peut être bénéfique dans les applications où le l'ordre des clés et des valeurs est important, comme :
Alors que les dictionnaires en Python 3.6 préservent ordre, vous pouvez toujours rencontrer des situations dans lesquelles les fonctionnalités supplémentaires de la classe collections.OrderedDict() sont utiles. Il offre des fonctionnalités telles que :
Python 3.6 et les versions ultérieures intègrent par défaut l'ordre d'insertion dans les dictionnaires, fournissant gestion pratique et prévisible des paires clé-valeur dans leur séquence déclarée. Cependant, pour des besoins spécifiques où des dictionnaires réversibles ou réorganisables sont nécessaires, la classe OrderedDict reste une option viable.
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!