Python avec des fichiers JSON

Python avec des fichiers JSON
Avec la croissance et l'évolution des défis en informatique, Python continue d'augmenter en tant que compétence de programmation principalement recherchée pour résoudre les problèmes de science des données.

Qu'est-ce que JSON?

Parmi les outils, les langues et les techniques communément associés à la notation d'objet Python, JSON ou JavaScript, est un format de fichier que Python peut lire, écrire et analyser. JSON est couramment utilisé pour l'échange de données sur le Web. Plus précisément, JSON est le format de texte préféré lors de l'envoi d'informations d'un serveur Web à un navigateur ou vice versa. Ceci est avantageux simplement à cause de son efficacité. JSON peut être directement converti en objets JavaScript et donc interprété, et les objets JavaScript peuvent être directement convertis en texte JSON. Aucune analyse trépidante et désorganisée supplémentaire n'est requise. En ce qui concerne l'échange de données sur le Web, JSON est le format incontournable.

Python - Lire, écrire et analyser JSON

Parce que JSON est indépendant de la langue, les objets Python peuvent également être convertis en JSON. De même, si Python reçoit des données au format JSON, il peut le convertir en toute transparence en objets Python. JSON est léger. Vous n'avez qu'à importer JSON dans Python pour utiliser la lecture JSON de Python, l'écriture de JSON et l'analyse de la fonctionnalité JSON. JSON est un module intégré à Python et vous n'avez besoin que de type Importer JSON en haut de votre python avec du code json pour commencer.

Pourquoi utiliserait-on JSON avec Python? Eh bien, si vous travaillez sur un projet Web qui a à voir avec la lecture des données, il est probable que vous deviez tomber sur un python qui hors de la situation. Python est une langue qui peut être utilisée à de nombreuses fins différentes et sa fonctionnalité croissante signifie qu'il est inévitable que vous le rencontrerez dans votre parcours de programmation. Le soutien que Python donne à différentes dynamiques de programmation signifie que c'est un morceau de gâteau pour travailler avec JSON dans cette langue.

Fonctions de module JSON de base dans Python

Le format:

Si vous avez utilisé Python dans un montant considérable dans le passé, vous devez être familier avec une structure de données connue sous le nom de dictionnaire. En fait, il est tout à fait probable que les dictionnaires ont été vos meilleurs amis lorsque vous travaillez à Python. Leur format facile à interpréter en fait la structure de données la plus sensible à utiliser lorsque vous travaillez avec des objets personnalisés qui nécessitent des attributs de différents types. Et croyez-nous quand nous disons cela que les dictionnaires sont utilisés incroyablement fréquemment à Python!

Par exemple, si vous souhaitez utiliser un objet d'élément, vous pouvez créer un dictionnaire comme:

Maintenant que vous avez vu à quoi ressemble un dictionnaire dans le code Python et Lorsqu'il est imprimé, je suis sûr que son format a beaucoup plus de sens maintenant que lorsque vous tombez pour la première fois sur ces informations enfermées dans des supports bouclés.

Voici où les choses commencent à devenir un peu plus pertinentes. Boucler! Parce que nous allons révéler la plus grande intersection entre Python et JSON. Rappelez-vous le format d'un dictionnaire à Python? Ce petit extrait de code avec les accolades illustrés ci-dessus? Observez maintenant l'image ci-dessous:

Remarquez quelque chose? Comment pouvez-vous ne pas? C'est exactement la même chose! Les dictionnaires Python et le texte JSON sont essentiellement le même format. Vous pouvez probablement déduire de ce que nous allons établir à mesure que l'article progresse - qu'il est épiquement simple de «vider» les dictionnaires python dans des fichiers JSON. Les dictionnaires ne sont pas les seuls objets Python qui peuvent être convertis en texte JSON. Les listes, les tuples, les booléens, les cordes, les INT, et la liste continuent sont toutes interchangeables avec JSON. Cependant, une chose que vous n'avez pas remarquée dans les deux images ci-dessus est les guillemets. JSON utilise des guillemets doubles seul, Contrairement à Python. Vous voudrez peut-être vous souvenir de ce détail pour vous sauver d'un épisode de "Where's the Damn Bug cette fois??!".

La procédure:

La première chose que vous devez faire est d'importer le module intégré de Python pour JSON.

Nous permet d'abord de commencer par créer JSON à partir d'un dictionnaire Python. L'écriture JSON utilise la méthode JSON.Dumps (). Cette méthode renvoie une chaîne JSON. La capture d'écran du code ci-dessous montre un dictionnaire converti en JSON et sa sortie affichée dans Jupyter Notebook.

Maintenant, écrivons ce dictionnaire Python converti en JSON en un fichier JSON. L'extrait de code ci-dessous montre que cela se fait en utilisant JSON.décharge(). Cela créera un fichier texte (fichier d'extension txt) avec la chaîne JSON qui lui est écrite.

Voici à quoi ressemble le fichier résultant:

La conversion des dictionnaires en JSON crée des objets JSON. Mais qu'en est-il des autres types de données à Python? Que leur arrive-t-il lorsque vous les convertissez en texte JSON? Cette question n'a pas une seule réponse. Par exemple, les listes et les tuples sont convertis dans le tableau équivalent JavaScript. Les INTS et les flotteurs sont convertis en numéro. Str est converti en chaîne. Oh, et nous avons presque oublié de mentionner! Tous ces types de données peuvent être convertis en JSON à l'aide des deux méthodes JSON.Dump () et JSON.Dumps ().

Maintenant que vous connaissez les fonctionnalités de base de la méthode des vidages, vous pouvez lire en toute sécurité comment mieux utiliser ses paramètres. Il a un paramètre pour l'ordre des données appelé sort_keys. Vous pouvez définir le délimiteur au lieu d'utiliser la valeur par défaut avec le paramètre des séparateurs. L'arrêt peut également être spécifié.

Voilà! C'est aussi facile de travailler avec des fichiers JSON dans Python! Utilisez ce guide et la documentation de Python pour vous aider à démarrer.