Ошибка при загрузке данных JSON - не удается найти файл
Я пытался решить эту проблему, но сейчас мне нужна помощь. Я пытаюсь загрузить этот файл JSON (DBL) в Spyder IDE. Я сохранил файл данных JSON и файл Spyder на одной карте, чтобы прочитать файл JSON, но он не работает.
Мой код Python:
import json
file = open("dbl")
dbl = json.load(file)
print(dbl)
Каждый раз, когда я загружаю файл json на ту же карту, что и файл spyder.py, он не может распознать каталог файлов.
Я сохранил свой файл .py в той же папке, что и файл JSON.
Это сообщение об ошибке:
FileNotFoundError: [Errno 2] No such file or directory: 'dbl.json'
5 ответов
Файл, по сути, не существует. Фактическое имя файла - dbl.json.json.
import json
file = open("dbl.json.json")
dbl = json.load(file)
print(dbl)
Код в порядке, однако рекомендуется добавить расширение файла. Похоже, вы забыли добавить расширение. Вы используете относительные пути. Рекомендуется использовать абсолютные пути. В этом случае поместите скрипт python и файл db1 в один каталог и повторите попытку.
В случае, если вы хотите отладить, просто добавьте приведенный ниже код поверх своего скрипта, чтобы увидеть, присутствует ли файл или нет, и соответствующим образом измените скрипт.
import os;
print(os.listdir())
Вы будете использовать ".json" в пути к файлу. Например:
file = open("dbl.json")
если dbl - это имя json-файла, вам также следует добавить расширение «.json». вы можете сделать это:
# Opening JSON file
f = open('dbl.json',)
# returns JSON object as
# a dictionary
data = json.load(f)
# Iterating through the json
# list
for i in data:
print(i)
# Closing file
f.close()```
У меня тоже есть эта проблема. Я предполагаю, что если вы используете метод сериализации, отличный от стандартного, для сериализации данных и сохранения их в файле Json, то, очевидно, у Json возникают проблемы с распознаванием этого файла, когда вы пытаетесь его открыть. К суффиксу это не имеет никакого отношения. Файл Json не обязательно должен иметь суффикс «json». Это связано с тем, что иногда люди используют индивидуальный подход и перезаписывают метод сериализации Json по умолчанию. Это нормально, если вы не пытаетесь сохранить сериализованные данные в файле. Файл, который вы читаете или открываете, вероятно, не сериализован «классическим» способом, и у Json есть эмитент, распознающий его как законный файл Json.
У меня сейчас эта проблема. Вероятно, это не имеет никакого отношения к имени файла или пути, по которому файл сохраняется или хранится.