Как читать JSON-файл в Python

Comment lire le fichier JSON en Python ?

Salut tout le monde! Aujourd’hui, nous allons essayer de comprendre : qu’est-ce que JSON et comment lire un fichier JSON en Python ?

Tout d’abord, quelques faits :

  • JSON signifie JavaScript Object Notation
  • Il s’agit d’un format d’échange de données dans lequel vous pouvez transférer des données d’un client à un serveur et d’un serveur à un client
  • Il est également utilisé pour la communication entre les applications
  • JSON est extrêmement important pour le développement d’applications, en particulier lorsque vous travaillez avec l’API Rest
  • Il est basé sur un sous-ensemble de Java Script
    C’est facile à lire et à écrire
    Nous nous sommes familiarisés avec la théorie et nous allons maintenant apprendre les règles de base de la syntaxe lorsque nous travaillons avec le format JSON :

  • JSON utilise des paires clé-valeur – {« name »: « Vasya »}

  • JSON utilise des guillemets doubles autour de la clé
    Habituellement, dans les tutoriels, ils parlent de l’équipe avec des données sur le salaire, le lieu de résidence et tout ça. Ne brisons pas la tradition, et imaginons une équipe composée de 5 employés : Vasya, Sasha, Petya, Dasha, Masha. Chaque employé reçoit un certain salaire, ce qui signifie que nous pouvons créer notre propre fichier JSON (appelons le fichier personal.json), qui sera une liste d’employés + leur salaire:
{
"personal" :   [
{
"name" :   "Вася" ,
"salary" :   5000
} ,
 
{
"name" :   "Саша" ,
"salary" :   6000
} ,
 
{
"name" :   "Петя" ,
"salary" :   9000
 
} ,
 
{
"name" :   "Даша" ,
"salary" :   10000
 
},
 
{
"name" :   "Маша" ,
"salary" :   11000
 
}
]
}

comme vous pouvez le voir, le champ nom est responsable du nom de l’employé et le champ salaire est pour le niveau de salaire, mais le nom de ce tableau de données lui-même est personnel (indiqué tout en haut). Nous avons un fichier de données, mais comment le lire ? Pour ce faire, regardez le code ci-dessous :
import json #Inclure la bibliothèque chargée de travailler avec JSON

with open(‘personal.json’, ‘r’, encoding=’utf-8′) as f : #ouvrez le fichier personal.json et spécifiez son encodage afin que nous puissions travailler avec des lettres russes
text = json.load(f) #drive dans une variable tout ce qui est sorti à la suite de la bibliothèque
print(text) #imprime le résultat à l’écran

Si vous exécutez le code, vous obtiendrez quelque chose comme ceci à l’écran :
{‘personnel’ : [{‘name’ : ‘Vasya’, ‘salary’ : 5000}, {‘name’ : ‘Sasha’, ‘salary’ : 6000}, {‘name’ : ‘Petya’, ‘salary’ : 9000}, {‘name’ : ‘Dasha’, ‘salary’ : 10000}, {‘name’ : ‘Masha’, ‘salary’ : 11000}]}

D’accord – il est extrêmement difficile de lire et d’analyser de telles données. Pour simplifier le travail dans un tel cas, la bibliothèque pprint est souvent utilisée, ce qui cultive le problème dans de tels cas. Dans ce cas, notre code ressemblera à ceci :

import json #подключили библиотеку для работы с json
from pprint import pprint #подключили Pprint для красоты выдачи текста
 
with open('personal.json', 'r', encoding='utf-8') as f: #открыли файл с данными
text = json.load(f) #загнали все, что получилось в переменную
pprint(text) #вывели результат на экран

La sortie résultante ressemble à ceci :

{'personal': [{'name': 'Вася', 'salary': 5000},
{'name': 'Саша', 'salary': 6000},
{'name': 'Петя', 'salary': 9000},
{'name': 'Даша', 'salary': 10000},
{'name': 'Маша', 'salary': 11000}]}

Et maintenant, nous allons afficher les données dans leur forme pure – le nom de l’employé + le salaire. Ensuite, le code ressemblera à ceci :

import json #Подключили библиотеку
 
with open('personal.json', 'r', encoding='utf-8') as f: #открыли файл
text = json.load(f) #загнали все из файла в переменную
print(text) #вывели результат на экран
 
for txt in text['personal']: #создали цикл, который будет работать построчно
print(txt['name'], ':', txt['salary']) #и выводим на экран все, что в значении ключей name и salary

En fait… on pourrait dire que tout suffit pour aujourd’hui, mais à la fin je vous dirai comment lire non pas des fichiers json, mais des lignes. Par exemple, nous aurons une chaîne json :
trait = ‘{« nourriture »: « banane »}’
Si on essaie de l’afficher à l’écran, on obtient :
{« food »: « banana »} – qui transmet généralement l’essence, mais ne respecte pas les règles 🙂 Pour sortir la chaîne json, la fonction load est utilisée. Sous forme de code, cela ressemble à ceci :

import json #подключаем библиотеку для работы с json
stroke = '{"food": "banana"}' #json-строка
stroke_s = json.loads(stroke) #загоняем в переменную результат чтения json-строки
print(stroke_s) #выводим результат на экран

C’est tout 🙂 Merci pour votre attention ! Et oui – nous verrons comment écrire dans un fichier json un peu plus tard 🙂
Avoir des questions? Demandez par mail, ou écrivez à Telegram 🙂

UPD : la vidéo est arrivée à temps 🙂