Python

Python XML vers dictionnaire

Python XML vers dictionnaire

XML (Extensible Markup Language) est le langage de balisage utilisé pour stocker les données. C'est un format très utile pour stocker des données car il définit un ensemble de règles qui nous permettent de stocker les données dans un tel format, qui est une machine ainsi que lisible par l'homme. Il est largement utilisé pour stocker des données. C'est un langage de balisage de type HTML car ils ont le même type de structure. Cependant, XML n'offre pas les balises définies, mais vous pouvez définir vos propres balises et créer votre propre langage de balisage. Les données stockées dans le document XML peuvent être extraites et analysées facilement. C'est la raison pour laquelle il est le plus couramment utilisé pour les serveurs Web. XML est un langage sensible à la casse.

Python est livré avec de nombreux modules et fonctions intégrés pour effectuer des tâches spécialisées. Il possède de nombreuses structures de données intégrées pour stocker et gérer les données. Le dictionnaire est l'une des structures de données intégrées très utiles qui est utilisée pour stocker des données au format de paire clé-valeur. Nous pouvons simplement convertir les données XML en un dictionnaire Python. Python fournit le xmldict module pour effectuer les tâches liées à XML. Cet article explique la conversion de XML en dictionnaire en Python.

Installation du module xmltodict

Avant de commencer la conversion XML en dictionnaire, nous devons d'abord installer le module xmltodict. Le xmltodict peut facilement être installé à l'aide du package d'index Python (pip). Exécutez la commande suivante pour installer le module xmltodict à l'aide de pip :

pip installer xmltodict

Si vous utilisez pip3, exécutez la commande suivante pour installer le module xmltodict :

pip3 installer xmltodict

L'installation du module sur votre système prendra quelques minutes.

Après l'installation réussie, vous recevrez un message « xmltodict installé avec succès."

Si vous utilisez un système basé sur Debian, exécutez la commande suivante pour installer le module xmltodict :

sudo apt installer python-xmltodict

La commande ci-dessus est pour Python2. Dans le cas de la version Python3, exécutez la commande suivante :

sudo apt installer python3-xmltodict

Conversion XML en dictionnaire

Convertissons maintenant un dictionnaire XML en Python. Pour cela, nous devons d'abord importer le module xmltodict dans notre script Python. le xmltodict.analyser () est une fonction intégrée qui convertit le dictionnaire XML en Python.

#importation du module xmltodict
importer xmltodict
#définir une chaîne xml
xml_data = """

FA18-RSE-012

Kamran
Kamran
Kamran

[email protégé]
4
MSSE

ASPMI
ASQA
ASPM
Web sémantique


"""
#conversion de XML en dictionnaire
mon_dict = xmltodict.analyser (xml_data)
#détermination du type d'objet converti
print(type("Le type est : ", mon_dict))

Production

Dans la sortie, on peut voir que le XML est converti avec succès en dictionnaire.

Accédons maintenant aux données en utilisant les clés du dictionnaire. Le nom des balises sont des clés et les données à l'intérieur des balises sont en fait une valeur.

#importation du module xmltodict
importer xmltodict
#définir une chaîne xml
xml_data = """

FA18-RSE-012

Kamran
Sattar
Awaisi

[email protégé]
4
MSSE

ASPMI
ASQA
ASPM
Web sémantique


"""
#conversion de XML en dictionnaire
mon_dict = xmltodict.analyser (xml_data)
#détermination du type d'objet converti
print("Le type est : ",type(my_dict))
#accès à la carte d'étudiant
print(my_dict['student']['id'])
#accès au nom de l'étudiant
print(my_dict['étudiant']['nom'])
#accès au prénom de l'élève
print(my_dict['étudiant']['nom']['prénom'])
#accès au deuxième prénom de l'étudiant
print(my_dict['student']['name']['middleName'])
#accès au nom de l'élève
print(my_dict['student']['name']['lastName'])
#accès à la messagerie de l'élève
print(my_dict['étudiant']['email'])
#accès au semestre étudiant
print(my_dict['étudiant']['semestre'])
#accès à la classe étudiante
print(my_dict['étudiant']['classe'])
#accès à la matière étudiante3
print(my_dict['student']['subjects']['sub3'])

Production

La sortie montre que les données sont accédées avec succès à l'aide des clés.

Conversion XML en dictionnaire à l'aide de fichiers

Les données XML sont principalement stockées dans des fichiers. Les fichiers XML sont créés avec le .extension xml. Maintenant, ouvrons le fichier XML et convertissons les données dans un dictionnaire Python et accédons aux valeurs à l'aide de clés.

C'est notre élève.fichier xml.

Écrivons maintenant notre script Python pour ouvrir le fichier et convertir les données XML en dictionnaire Python.

#importation du module
importer xmltodict
#ouverture du fichier xml en lecture
avec open("étudiant.xml","r") en tant que xml_obj :
#convertir les données XML dans le dictionnaire Python
mon_dict = xmltodict.parse(xml_obj.lis())
#fermeture du dossier
xml_obj.Fermer()
#accès à la valeur du nom
print(my_dict['student']['name']['lastName'])
#accès à la valeur de l'e-mail
print(my_dict['étudiant']['email'])
#accès à la valeur de la classe
print(my_dict['étudiant']['classe'])
#accès à la valeur du semestre
print(my_dict['étudiant']['semestre'])
#accès à la valeur du sujet
print(my_dict['student']['subjects']['sub1'])

Production

Conclusion

XML est un format populaire pour stocker des données. Il est le plus souvent utilisé pour échanger des données entre des serveurs Web et des applications logicielles. Les données XML peuvent être converties en un dictionnaire Python à l'aide du module xmltodict. Cet article explique l'installation du module xmltodict et la conversion XML en dictionnaire avec plusieurs exemples.

Meilleurs jeux de laboratoire d'applications Oculus
Si vous êtes propriétaire d'un casque Oculus, vous devez être au courant du chargement latéral. Le chargement latéral est le processus d'installation ...
Top 10 des jeux à jouer sur Ubuntu
La plate-forme Windows a été l'une des plates-formes dominantes pour les jeux en raison du pourcentage énorme de jeux qui se développent aujourd'hui p...
5 meilleurs jeux d'arcade pour Linux
De nos jours, les ordinateurs sont des machines sérieuses utilisées pour les jeux. Si vous ne pouvez pas obtenir le nouveau score élevé, vous saurez c...