тгТихая грань
ОПЕРАЦИЯ · ПРЕОБРАЗОВАНИЕ

Преобразовать JSON-массив в JSONL

Записать каждый элемент массива отдельной строкой.

Инструмент: Python 3 · риск: creates-output · проверено: 2026-02-21

Предварительные условия

Python 3; array.json — массив; файл целиком помещается в память.
Команда
python3 - <<'PY'
import json
with open("array.json", encoding="utf-8") as f: data = json.load(f)
if not isinstance(data, list): raise ValueError("Ожидался массив")
with open("converted.jsonl", "x", encoding="utf-8", newline="\n") as f:
    for item in data:
        f.write(json.dumps(item, ensure_ascii=False, allow_nan=False) + "\n")
PY

Объяснение аргументов

ensure_ascii=False сохраняет UTF-8; allow_nan=False отклоняет нестандартные числа.

Ожидаемый результат

По одному JSON-значению на строку.

Проверка

Число строк равно длине массива; разберите каждую строку.

Распространённые ошибки

  • Для огромного массива нужен потоковый парсер; стандартный json.load не потоковый.

Обратимость

Исходник остаётся.

Применимые форматы

json jsonl