Software Engineering
August 15, 2021
JSON — это не вложенные дикты, листы и скаляры
JSON — это последовательность байтов. Байты представляют из себя строку текста в в UTF-8. В которую закодированы вложенные дикты, листы, инты, флоаты, строки и наны. Пример:
json_encoded_data = b'{"foo": {"bar": ["buzz", "fizz"], "qwe": 123}}' decoded_data = json.loads(json_encoded_data)
json_encoded_data
— вот это JSON. decoded_data
— а это не JSON.
Не надо называть большой дикт словом json
. Это не JSON, это просто большой дикт, который может быть закодирован в XML, ASN.1, Protobuf, код на Python и кучу других форматов данных.
Называйте словом json
байты или, на худой конец, строку, которая получена путем декодирования байтов из UTF-8.