Не удаётся загрузить в переменную json файл со словарём
py файл и json файл лежат в одной папке. json файл содержит словарь. Необходимо загрузить json файл(словарь) в переменную, чтобы проитерироваться по нему.
Делал так:
with open('test.json', 'r') as file:
data = json.loads(file)
print(data)
выпадает ошибка:
Traceback (most recent call last):
File "testtest.py", line 15, in <module>
data = json.loads(file)
File "/usr/lib/python3.6/json/__init__.py", line 348, in loads
'not {!r}'.format(s.__class__.__name__))
TypeError: the JSON object must be str, bytes or bytearray, not 'TextIOWrapper'
Ответы (1 шт):
Автор решения: nomnoms12
→ Ссылка
Передавайте не объект файла, а его данные, которые можно получить с помощью file.read(). Либо используйте json.load.
Примеры:
with open('test.json') as file:
data = json.loads(file.read())
with open('test.json') as file:
data = json.load(file)