Ответ 1
Вы можете использовать метод json.dump()
:
with open("text", "w") as outfile:
json.dump({'numbers':n, 'strings':s, 'x':x, 'y':y}, outfile, indent=4)
Я пытаюсь написать свой первый json файл. Но по какой-то причине он фактически не напишет файл. Я знаю, что это что-то делает, потому что после запуска дампов любой случайный текст, который я помещал в файл, стирается, но на его месте нет ничего. Само собой разумеется, но загружает часть бросков и ошибок, потому что там ничего нет. Не должно ли это добавить весь текст json в файл?
from json import dumps, load
n = [1, 2, 3]
s = ["a", "b" , "c"]
x = 0
y = 0
with open("text", "r") as file:
print(file.readlines())
with open("text", "w") as file:
dumps({'numbers':n, 'strings':s, 'x':x, 'y':y}, file, indent=4)
file.close()
with open("text") as file:
result = load(file)
file.close()
print (type(result))
print (result.keys())
print (result)
Вы можете использовать метод json.dump()
:
with open("text", "w") as outfile:
json.dump({'numbers':n, 'strings':s, 'x':x, 'y':y}, outfile, indent=4)
Изменить:
dumps({'numbers':n, 'strings':s, 'x':x, 'y':y}, file, indent=4)
To:
file.write(dumps({'numbers':n, 'strings':s, 'x':x, 'y':y}, file, indent=4))
также:
file.close()
. Если вы используете with open...
, тогда обработчик всегда правильно закрывается.result = load(file)
должен быть result = file.read()