Перейти к содержанию

Python dict to JSON

Преобразуйте словарь или список Python в JSON и обратно.

Входные данные
Выходные данные

Python dict to JSON

Вставьте словарь или список Python, и этот инструмент преобразует его в корректный JSON — превращая True, False и None в true, false и null, а одинарные кавычки в двойные. Также парсит кортежи Python, так как JSON не имеет отдельного типа кортежей, сворачивая их в JSON массивы. Используйте, когда вы скопировали значение переменной из Python REPL, вызова print() или дампа pprint и вам нужен эквивалентный JSON для запроса API, конфигурационного файла или тестового набора данных.

Переключите направление, чтобы преобразовать JSON в Python: ключи объектов и строки отображаются в выбранном вами стиле кавычек (одинарные по умолчанию, соответствуя PEP 8, или двойные), а JSON массивы отображаются как Python списки, если вы не включите «Отображать массивы как кортежи». Сортируйте ключи в алфавитном порядке для стабильного diff или сохраняйте исходный порядок. Добавляйте отступы в 2 пробела, 4 пробела, табуляцию или сворачивайте всё в одну строку. Включение «Конвертировать значения date() / datetime()» распознаёт вызовы date(...) и datetime(...) в Python вводе и записывает их как ISO 8601 строки, и делает обратное для JSON строк, которые уже выглядят как дата или временная метка.

Парсер принимает как одинарные, так и двойные кавычки, вложенные словари, списки и кортежи любой глубины, отрицательные числа, подчеркивания в целых числах (1_000) и научную нотацию. Окончания строк Windows и Unix обрабатываются одинаково, и счетчик под выводом показывает количество ключей, строк и символов по мере ввода. Если ввод не является корректным Python или JSON, сообщение об ошибке указывает точную строку и столбец.

Всё выполняется локально в вашем браузере — ничего из того, что вы вставляете, никуда не загружается. Скопируйте результат, скачайте его как файл .txt или отправьте вывод прямо обратно на вход для продолжения преобразования.

FAQ

Что происходит с кортежами Python?
Кортеж, такой как (1, 2, 3), парсится и преобразуется в JSON массив, так как JSON не имеет отдельного типа кортежей. При преобразовании из JSON в Python включите «Отображать массивы как кортежи», чтобы вместо списков получить кортежи.
Обрабатывает ли он вложенные словари и списки?
Да. Словари, списки и кортежи могут быть вложены на любую глубину, и преобразователь проходит по всей структуре в обоих направлениях.
Что делает «Конвертировать значения date() / datetime()»?
Когда включена, вызовы date(2024, 1, 5) и datetime(2024, 1, 5, 9, 30, 0) в Python вводе становятся ISO 8601 строками в JSON выводе, и совпадающие ISO строки становятся вызовами date(...) / datetime(...) при преобразовании из JSON в Python.
Что если в моём вводе синтаксическая ошибка?
Инструмент показывает строку и столбец, где парсинг завершился неудачей, и что он ожидал там, вместо общей ошибки, чтобы вы могли быстро найти проблему.
Загружаются ли мои данные куда-либо?
Нет. Преобразование выполняется полностью в вашем браузере — ничего из того, что вы вставляете, никогда не покидает ваше устройство.