JSON (обозначение объектов JavaScript) и CSV (значения, разделенные запятыми) — два популярных формата файлов, используемых для хранения и обмена данными. JSON обычно используется для обмена данными между клиентскими и серверными приложениями, а CSV широко используется для хранения и обмена табличными данными.

В этой статье мы обсудим, как преобразовать данные JSON в формат CSV с помощью Python.

Пример данных JSON:

{
    "employees": [
        {
            "id": "1",
            "name": "John Doe",
            "age": "30",
            "department": "IT"
        },
        {
            "id": "2",
            "name": "Jane Smith",
            "age": "35",
            "department": "Marketing"
        },
        {
            "id": "3",
            "name": "Bob Johnson",
            "age": "40",
            "department": "Sales"
        }
    ]
}

Мы будем использовать встроенные в Python модули json и csv для преобразования этих данных JSON в формат CSV.

Во-первых, нам нужно загрузить данные JSON в словарь Python с помощью метода json.loads(). Затем мы можем открыть файл CSV с помощью метода csv.writer () и записать строку заголовка и строки данных в файл CSV.

Вот код Python для преобразования вышеуказанных данных JSON в формат CSV:

import json
import csv

# Load JSON data
with open('data.json') as f:
    data = json.load(f)

# Open CSV file for writing
with open('data.csv', 'w', newline='') as f:
    writer = csv.writer(f)

    # Write header row
    writer.writerow(data['employees'][0].keys())

    # Write data rows
    for employee in data['employees']:
        writer.writerow(employee.values())

Давайте рассмотрим код шаг за шагом:

Начнем с импорта модулей json и csv.

Мы загружаем данные JSON из файла data.json с помощью метода json.load() и сохраняем их в переменной data.

Мы открываем новый CSV-файл data.csv в режиме записи, используя функцию open() и метод csv.writer(). Мы также устанавливаем для параметра новой строки пустую строку, чтобы избежать проблем с окончанием строки.

Мы записываем строку заголовка в CSV-файл, используя метод write.writerow() и передавая ключи первого сотрудника в данных JSON в виде списка.

Мы записываем строки данных в файл CSV, используя цикл for. Для каждого сотрудника в данных JSON мы получаем значения словаря с помощью метода values() и передаем их в виде списка методу write.writerow().

Наконец, мы закрываем CSV-файл с помощью метода close().

Полученный CSV-файл data.csv будет выглядеть следующим образом:

id,name,age,department
1,John Doe,30,IT
2,Jane Smith,35,Marketing
3,Bob Johnson,40,Sales

В заключение, преобразование данных JSON в формат CSV с помощью Python — это простой процесс, который можно выполнить с помощью встроенных модулей json и csv. Следуя шагам, описанным в этой статье, вы сможете легко преобразовать любые данные JSON в формат CSV.