recherche
Maisondéveloppement back-endTutoriel PythonComment garder un dictionnaire en ordre en python (code)

Ce que cet article vous apporte concerne la façon dont Python maintient les dictionnaires en ordre (code). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

1. Exigences

Nous voulons créer un dictionnaire, et en même temps, lors de l'itération ou de la sérialisation du dictionnaire, nous pouvons également contrôler l'ordre des éléments.

2. Solution

Pour contrôler l'ordre des éléments dans le dictionnaire, vous pouvez utiliser la classe OrderedDict dans le module collections. Lors d’une itération sur un dictionnaire, il le fait strictement dans l’ordre dans lequel les éléments ont été initialement ajoutés.

from collections import OrderedDict
d=OrderedDict()
d['a']=1
d['b']=2
d['c']=3
d['d']=4
#根据插入删除输出
for key in d:
print(key,d[key])

Résultat :

a 1
b 2
c 3
d 4

OrderedDict est particulièrement utile lorsque vous souhaitez créer une structure de mappage qui peut être ultérieurement sérialisée ou encodée dans un autre format. Par exemple : Si vous souhaitez contrôler avec précision l'ordre de chaque champ lors de l'encodage JSON, il vous suffit alors de construire d'abord les données dans OrderedDict :

from collections import OrderedDict
import json

d=OrderedDict()
d['a']=1
d['b']=2
d['c']=3
d['d']=4
j=json.dumps(d)
print(j)

Résultat :

{"a": 1, "b": 2, "c": 3, "d": 4}
OrderedDict maintient un interne Une liste doublement chaînée, qui organise les positions clés en fonction de l'ordre dans lequel les éléments sont ajoutés. Le premier élément nouvellement ajouté est placé à la fin de la liste chaînée, puis les clés existantes sont réaffectées sans changer la position des clés.

Veuillez noter : OrderedDict est 2 fois la taille d'un dictionnaire normal. Cela est dû à la liste chaînée supplémentaire qu’il crée. Par conséquent, si vous envisagez de créer une structure de données impliquant un grand nombre d'instances OrderedDict (par exemple, lire 100 000 lignes d'un fichier CSV dans une liste OrderedDict), vous devrez effectuer une analyse des exigences de l'application pour déterminer les avantages. d'utiliser OrderedDict. Les inconvénients de la surcharge de mémoire supplémentaire peuvent-ils être surmontés ?

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
Quelles sont les raisons courantes pour lesquelles un script Python pourrait ne pas s'exécuter sur Unix?Quelles sont les raisons courantes pour lesquelles un script Python pourrait ne pas s'exécuter sur Unix?Apr 28, 2025 am 12:18 AM

Les raisons pour lesquelles les scripts Python ne peuvent pas fonctionner sur les systèmes UNIX incluent: 1) des autorisations insuffisantes, en utilisant Chmod xyour_script.py pour accorder des autorisations d'exécution; 2) Ligne Shebang incorrecte ou manquante, vous devez utiliser #! / Usr / bin / enwpython; 3) Paramètres de variables d'environnement incorrectes, vous pouvez imprimer OS.environ Debogging; 4) En utilisant la mauvaise version Python, vous pouvez spécifier la version sur la ligne Shebang ou la ligne de commande; 5) Problèmes de dépendance, en utilisant un environnement virtuel pour isoler les dépendances; 6) Erreurs de syntaxe, utilisez python-mpy_compileyour_script.py pour détecter.

Donnez un exemple de scénario où l'utilisation d'un tableau Python serait plus appropriée que l'utilisation d'une liste.Donnez un exemple de scénario où l'utilisation d'un tableau Python serait plus appropriée que l'utilisation d'une liste.Apr 28, 2025 am 12:15 AM

L'utilisation de tableaux Python est plus adapté au traitement de grandes quantités de données numériques que les listes. 1) Les tableaux économisent plus de mémoire, 2) les tableaux sont plus rapides pour fonctionner par des valeurs numériques, 3) la cohérence de type de force des tableaux, 4) Les tableaux sont compatibles avec les tableaux C, mais ne sont pas aussi flexibles et pratiques que les listes.

Quelles sont les implications de performances de l'utilisation des listes par rapport aux tableaux dans Python?Quelles sont les implications de performances de l'utilisation des listes par rapport aux tableaux dans Python?Apr 28, 2025 am 12:10 AM

Listes sont une meilleure ancêtres et des datatatates de mix

Comment Numpy gère-t-il la gestion de la mémoire pour les grandes tableaux?Comment Numpy gère-t-il la gestion de la mémoire pour les grandes tableaux?Apr 28, 2025 am 12:07 AM

NumpyManagesMemoryForLargeArraySEfficientlyUsingViews, Copies andMemory-MapyPiles.1) Vues Allowcing withoutcopy

Qui nécessite l'importation d'un module: listes ou tableaux?Qui nécessite l'importation d'un module: listes ou tableaux?Apr 28, 2025 am 12:06 AM

ListSinpythondonoTequireImporttingAmodule, tandis que les listes de la part de la variation de la daymoduleeeedanimport.1)

Quels types de données peuvent être stockés dans un tableau Python?Quels types de données peuvent être stockés dans un tableau Python?Apr 27, 2025 am 12:11 AM

PythonlistScanstoreanyDatatype, ArrayModulearRaySstoreOneType, et NumpyArraysArnumericalComptations.1) ListesaSaSatilebutlessmemory-Efficient.2) NumpyArraySareMory-EfficientForHomoGeneousData.3)

Que se passe-t-il si vous essayez de stocker une valeur du mauvais type de données dans un tableau Python?Que se passe-t-il si vous essayez de stocker une valeur du mauvais type de données dans un tableau Python?Apr 27, 2025 am 12:10 AM

Lorsque vous vous assumez de la valeur de la valeur de la datyypie de la datyylethonarray.

Quelle partie fait partie de la bibliothèque standard Python: listes ou tableaux?Quelle partie fait partie de la bibliothèque standard Python: listes ou tableaux?Apr 27, 2025 am 12:03 AM

PythonlistSaReparmentofthestandardLibrary, tandis que les coloccules de colocède, tandis que les colocculations pour la base de la Parlementaire, des coloments de forage polyvalent, tandis que la fonctionnalité de la fonctionnalité nettement adressée.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

PhpStorm version Mac

PhpStorm version Mac

Le dernier (2018.2.1) outil de développement intégré PHP professionnel

VSCode Windows 64 bits Télécharger

VSCode Windows 64 bits Télécharger

Un éditeur IDE gratuit et puissant lancé par Microsoft

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

MantisBT

MantisBT

Mantis est un outil Web de suivi des défauts facile à déployer, conçu pour faciliter le suivi des défauts des produits. Cela nécessite PHP, MySQL et un serveur Web. Découvrez nos services de démonstration et d'hébergement.

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel