Имам данни, които приличат [["header","row"],["5","16"], ...]
В случай, че са запазени във файл, те могат лесно да бъдат прочетени
with open(input_data, "r") as f:
data = json.load(f)
Трябва да е възможно да ги прочетете data
но по някакъв начин входният низ не може да бъде преобразуван в json data = json.loads(x)
се завръща ValueError: No JSON object could be decoded
Какво ми липсва?
Отговори:
0 за отговор № 1Грешката ValueError
ви казва, че JSON не е валиден. Коригирайте JSON във файла или низа и той ще се зареди правилно.
Кодът ви ще зареди правилно данните JSON от даден файл, ако input_data
е името на файла.
json.load()
срещу json.loads()
И двете функции ще обработят json.
json.load()
отнема файл като обект.
json.loads()
взема низ или обект unicode.
JSON файл:
[["header","row"],["5","16"]]
Този код правилно ще прочете горния JSON от файл:
input_data = "json_file_name.json"
with open(input_data, "r") as f:
data = json.load(f)
print(data)
Това ще обработва JSON, съхраняван в низ:
json_string = "[["header","row"],["5","16"]]"
print(json.loads(json_string))