Titre RNCP Niveau 7

Maîtrisez pipelines, cloud & IA pour devenir Data Engineer opérationnel.

Devenez Data Engineer

DataScientist.fr

Formations

L'équipeLa plateforme
Offre entreprises

🇫🇷

Travailler avec les données json en Python - Tutoriel interactif
Python
JavaScript

Travailler avec les données json en Python - Tutoriel interactif

Romain DE LA SOUCHÈRE

Lead Developer, Expert Cloud et DevOps

Publié le 2 janvier 2025 · 8 min de lecture

Dans un monde numérique où les données sont omniprésentes, maîtriser leur formatage et leur manipulation est essentiel. Le JSON, ou JavaScript Object Notation, est devenu un langage incontournable pour structurer et échanger des informations de manière efficace et lisible. Cet article vous guide à travers les fondamentaux de JSON, en explorant comment écrire et lire ces données avec Python, et vous offre les clés pour interagir habilement avec ce format. Plongez dans l'univers du JSON et découvrez comment optimiser vos échanges d'informations dans vos projets technologiques.

Présentation du json

Le format JSON, ou JavaScript Object Notation, est devenu une norme incontournable pour l'échange de données entre serveurs et applications web. Son adoption est due à sa simplicité et sa lisibilité, combinées à sa capacité à représenter des structures de données complexes.

Qu'est-ce que le JSON ?

Le JSON est un format léger d'échange de données qui s'inspire de la syntaxe des objets JavaScript. Il est essentiellement constitué de paires clé-valeur, ce qui le rend similaire aux dictionnaires ou aux objets en Python. Voici un exemple simple de données JSON :
json
Dans cet exemple, nous avons un objet représentant une personne avec un nom, un âge et une liste de compétences.

Pourquoi utiliser le JSON ?

Le JSON est privilégié pour plusieurs raisons :
  • Lisibilité : Contrairement à d'autres formats comme XML, JSON est facile à lire grâce à sa structure concise.
  • Interopérabilité : Il est largement supporté par la majorité des langages de programmation, facilitant l'échange de données entre systèmes divers.
  • Simplicité : Sa syntaxe est simple, ce qui réduit les erreurs lors de l'écriture ou de la lecture des données.
  • Compatibilité : JSON peut être facilement converti en objets natifs dans des langages comme JavaScript, Python, et bien d'autres.

Comparaison avec d'autres formats

Voici une comparaison entre JSON et XML, un autre format de données populaire :
Critère JSON XML
Lisibilité Facile à lire en raison de sa syntaxe claire et concise Peut être verbeux et difficile à lire
Taille du fichier Généralement plus compact Souvent plus large à cause des balises
Modèle de données Basé sur des paires clé-valeur Basé sur une structure hiérarchique
Support natif Supporté par de nombreux langages modernes Nécessite souvent des bibliothèques supplémentaires

Utilisation dans le développement web

Dans le développement web, JSON est souvent utilisé pour :
  • API RESTful : Les API utilisent JSON pour envoyer et recevoir des données.
  • Stockage de configuration : Les fichiers de configuration en JSON sont faciles à modifier sans nécessiter de rechargement du code.
  • Transfert de données : Il est utilisé pour transférer des données entre un client et un serveur, souvent via AJAX.
Le JSON est donc un outil puissant et flexible, essentiel pour quiconque travaille avec des applications modernes nécessitant une communication fluide entre différentes technologies.

Écriture de json avec python

Lorsqu'il s'agit de manipuler des données JSON en Python, la bibliothèque standard json offre des outils robustes pour la lecture et l'écriture de fichiers JSON. Voici comment vous pouvez créer et manipuler des données JSON dans vos applications Python.

Écrire des données JSON

Pour convertir des données Python en JSON, nous utilisons la fonction json.dump() pour écrire directement dans un fichier, ou json.dumps() pour obtenir une chaîne JSON. Prenons un exemple simple :
python
Dans cet exemple, json.dump() écrit l'objet Python data dans un fichier nommé data.json. Le paramètre indent=4 permet de formater le JSON pour qu'il soit plus lisible.

Conversion en chaîne JSON

Si vous avez besoin de convertir des données en JSON sans les écrire dans un fichier, utilisez json.dumps() :
python
La méthode json.dumps() est utile lorsque vous devez manipuler ou transmettre des données JSON sous forme de chaîne, par exemple, lorsque vous travaillez avec des API.

Gestion des types de données complexes

La bibliothèque json en Python gère automatiquement les types de données standard comme les chaînes, les nombres, les listes et les dictionnaires. Cependant, pour les types de données complexes comme les objets personnalisés ou les dates, vous devrez peut-être fournir une fonction de sérialisation personnalisée :
python
Dans cet exemple, la fonction serialize() convertit un objet datetime en une chaîne au format ISO 8601.
Écrire des données JSON avec Python est une tâche essentielle pour toute application qui nécessite l'échange ou le stockage de données structurées. Grâce à la bibliothèque json de Python, vous pouvez facilement intégrer la sérialisation JSON dans vos projets, assurant ainsi une communication fluide et efficace entre vos systèmes.

Lecture de json avec python

La lecture de données JSON en Python est tout aussi simple que leur écriture, grâce à la bibliothèque intégrée json. Que vous ayez besoin de lire des fichiers JSON ou de traiter des chaînes JSON, Python offre des méthodes pratiques pour faciliter ces tâches.

Lire des fichiers JSON

Pour lire des fichiers JSON, nous utilisons la fonction json.load(), qui convertit le contenu JSON d'un fichier en un objet Python. Voici un exemple :
python
Dans cet exemple, le fichier data.json est ouvert en mode lecture, et json.load() est utilisé pour convertir le contenu JSON en un dictionnaire Python, que nous pouvons ensuite manipuler facilement.

Lire des chaînes JSON

Si vous avez une chaîne JSON, vous pouvez utiliser json.loads() pour la convertir en un objet Python. Voici comment cela fonctionne :
python
L'utilisation de json.loads() est particulièrement utile lorsque vous traitez des données JSON provenant de sources telles que des API web.

Gestion des erreurs

Lors de la lecture de JSON, il est important de gérer les exceptions pour éviter les erreurs inattendues. Voici un exemple de gestion d'erreurs :
python
En utilisant un bloc try-except, vous pouvez capturer et gérer les erreurs de décodage JSON, ce qui améliore la robustesse de votre application.
Grâce à ces outils et techniques, la lecture de JSON en Python devient une opération simple et efficace, permettant une intégration fluide des données JSON dans vos projets.

Interagir avec le json

Interagir avec des données JSON en Python implique non seulement de lire et d'écrire des fichiers, mais aussi de manipuler et d'exploiter ces données pour répondre à divers besoins applicatifs. Voici quelques techniques pour interagir efficacement avec JSON.

Modification des données JSON

Une fois que vous avez chargé les données JSON dans un objet Python, vous pouvez les manipuler comme n'importe quel autre dictionnaire ou liste Python. Par exemple, ajoutons une compétence à notre objet JSON :
python
Cet exemple montre comment charger les données, les modifier et les enregistrer, permettant une gestion dynamique des informations.

Recherche dans les données JSON

Pour rechercher des informations spécifiques dans un objet JSON, vous pouvez parcourir les structures de données Python obtenues après le chargement. Voici un exemple de recherche d'une compétence :
python
Cette méthode permet de filtrer et rechercher des informations en fonction de critères dynamiques.

Sérialisation avancée

Dans certains cas, vous pourriez avoir besoin de sérialiser des types de données complexes. Comme nous l'avons vu précédemment, définir une fonction personnalisée de sérialisation aide à convertir ces objets en JSON. Voici comment vous pourriez gérer cela pour une liste complexe :
python
L'utilisation de fonctions de sérialisation personnalisées vous permet de contrôler précisément la façon dont les données complexes sont converties en JSON, assurant une compatibilité maximale avec vos besoins d'application.
Grâce à ces techniques, interagir avec des données JSON en Python devient non seulement possible mais aussi pratique et puissant, offrant une flexibilité inégalée dans le traitement des informations.

Conclusion

En conclusion, le travail avec le JSON en Python est une compétence essentielle pour tout développeur moderne, étant donné la prévalence de ce format dans le développement web et les API. Grâce à la bibliothèque json de Python, nous pouvons non seulement lire et écrire des fichiers JSON, mais aussi interagir de manière dynamique avec les données qu'ils contiennent.

Récapitulatif des compétences acquises

  • Écriture et lecture : Vous avez appris à utiliser json.dump() et json.load() pour écrire et lire des fichiers JSON de manière efficace. Cela vous permet de sauvegarder et de récupérer des données structurées avec facilité.
  • Manipulation des données : Une fois les données JSON chargées dans des structures de données Python, vous êtes capable de les manipuler comme vous le feriez avec n'importe quel objet Python. Cela inclut l'ajout, la mise à jour et la suppression d'informations dans les objets JSON.
  • Sérialisation personnalisée : Pour gérer des types de données complexes, vous pouvez définir des fonctions de sérialisation personnalisées, vous permettant de convertir des objets non pris en charge par défaut en formats compatibles JSON.
  • Recherche et filtrage : Grâce aux fonctions Python natives, vous pouvez facilement rechercher et filtrer des données JSON, vous permettant de travailler avec des ensembles de données complexes sans effort.

Applications pratiques

Les compétences acquises vous permettent de créer des applications capables de communiquer efficacement avec d'autres systèmes via des formats standardisés. Que vous soyez en train de développer une application web qui consomme une API tierce, de créer des fichiers de configuration pour vos programmes, ou de stocker des données utilisateur, savoir manipuler du JSON est indéniablement utile.

Prochaines étapes

Pour approfondir vos compétences, envisagez de vous familiariser avec des bibliothèques tierces comme simplejson pour des fonctionnalités supplémentaires, ou d'explorer des frameworks web comme Flask ou Django, qui utilisent JSON pour faciliter les échanges de données. Travailler sur des projets pratiques vous aidera à consolider vos connaissances et à découvrir de nouvelles manières d'automatiser et de gérer des flux de données complexes.
En fin de compte, maîtriser le JSON en Python ouvre la porte à une multitude de possibilités dans le développement logiciel, vous permettant de créer des solutions robustes et évolutives.

Partager avec

💙 Merci d'avoir parcouru l'article jusqu'à la fin !

Romain DE LA SOUCHÈRE

Romain DE LA SOUCHÈRE - Lead Developer, Expert Cloud et DevOps

Ingénieur de formation avec plus de 11 ans d'expérience dans le développement back-end et le data engineering. Expert dans l’industrialisation des projets data dans le cloud.

» En savoir plus

Formations associés

Toutes nos formations

Préparez la certification PL‑300
Préparez la certification PL‑300
24 heures
Débutant
Garantie
Préparez la certification AZ-900
Préparez la certification AZ-900
10 heures
Débutant
Garantie
Préparez la certification DP‑700
Préparez la certification DP‑700
24 heures
Débutant
Garantie
Préparez la certification DP‑900
Préparez la certification DP‑900
10 heures
Débutant
Garantie

DataScientist.fr

By AXI Technologies

128 Rue de la Boétie,
75008, Paris, France

bonjour@datascientist.fr

+33 1 70 39 08 31

+33 6 86 99 34 78

© 2026 DataScientist.fr - AXI Technologies - Tous droits réservés