#python #json
Вопрос:
Я помогаю своему учителю, создавая игру, в которой дети k-2 могут выучить свои пароли, я добавил этот файл json, чтобы создать сохранение для учителя, чтобы ему не пришлось повторно добавлять имена и пароли всех компьютеров… Но когда я запускаю свой код, файл json стирается, и я теряю весь свой код… К счастью, у меня были резервные копии, но я не могу стереть их для своего учителя.
Код на Python:
import json with open("accounts.json", "w") as f: accountData = json.dumps(f) type(accountData)
JSON:
{ // not real names and passwords for security "accounts": [ { "id": "1", "uname": "scarlett", "pword": "k,", "points": "0" }, { "id": "2", "uname": "santiago", "pword": "k,", "points": "0" }, { "id": "3", "uname": "harper", "pword": "k,", "points": "0" } ] }
Комментарии:
1. Вы открываете файл в режиме записи (w). Это перезапишет файл (и сделает его пустым).
Ответ №1:
Это неправильное использование json.dump
метода. Вот часть справки json.dump
по python версии 3.7.6.
Help on function dump in module json: dump(obj, fp, *, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw) Serialize ``obj`` as a JSON formatted stream to ``fp`` (a ``.write()``-supporting file-like object).
Первым параметром должен быть dict
объект, содержащий имена и пароли, и вы пропустили этот параметр. И параметр f
должен быть на втором месте.
Комментарии:
1. Это по-прежнему не решает проблему, о которой упоминалось, т. Е.
dump
Файл по-прежнему перезаписывается, а данные теряются.