Справочник · ошибки Python
JSONDecodeError
Текст не похож на правильный JSON: лишняя запятая, одинарные кавычки или пустой ответ.
Python пишет ошибку в последней строке сообщения: сначала название, после двоеточия — подробности. Найди своё сообщение ниже — рядом объяснение простыми словами и что исправить.
Сломанный JSON
import json
person = json.loads("{'name': 'Аня'}")Python сообщает об ошибке
JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
- Что случилось
- Python не смог прочитать JSON.
- Почему так бывает
- В JSON ключи и текст берут в двойные кавычки. Одинарные кавычки, лишняя запятая или пустой текст ломают чтение. Ответ сервера тоже бывает не JSON: например, страница с ошибкой.
- Как исправить
- Проверь кавычки и запятые. Если это ответ сервера, выведи r.status_code и r.text.
Разбираем в уроке 8.3 «CSV и JSON».
Другие ошибки
SyntaxErrorNameErrorAttributeErrorTypeErrorIndentationErrorTabErrorValueErrorZeroDivisionErrorIndexErrorKeyErrorUnboundLocalErrorRecursionErrorFileNotFoundErrorUnsupportedOperationUnicodeDecodeErrorModuleNotFoundErrorEOFErrorAssertionErrorValidationErrorMissingSchemaConnectionErrorReadTimeoutHTTPErrorOperationalErrorIntegrityErrorProgrammingErrorNotImplementedError