Задать вопрос
@DF0rig
clay

Я хочу написать команду JSON python, но я встречаюсь с ошибкой. Как это исправить?

Я хочу сделать команду, которая при определённом действии записывала в json файл новую строку с данными пользавателя (именно добавляла, не заменяла). Вот мой код:

data = """[
		{"name": user_nickname,
		"password": rpass,
		"position": normal_position
		}
	]"""
	with open('users.json','r+') as f:
		json.dump(data, f)
	with open('users.json', 'r+') as fa:
		data = json.load(fa)
		data["name"] = str_user_nickname
		data["password"] = rpass
		data["position"] = normal_position
		f.seek(0,0)
		json.dump(data, fa)
  • Вопрос задан
  • 156 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillbox
    Профессия Python-разработчик + ИИ
    10 месяцев
    Далее
Решения вопроса 1
AlexNest
@AlexNest Куратор тега Python
Работаю с Python/Django
1.Если при попытке запуска кода появляется ошибка, то ее нужно привести в текстовом виде.
2.Вы уверены, что data в вашем коде должна быть строкой, а не списком?
I.Если да, то зачем вы пытаетесь использовать на ней json.dump? Данный метод используется, чтобы конвертировать структуру данных в корректный json-файл путем преображения этой самой структуры в строку и записи в файл.
II.Если data все-таки должна быть списком, то почему вы пытаетесь обратиться к данным по ключу? Списки поддерживают только обращение по индексу.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Краснодар
от 220 000 до 300 000 ₽
ITK academy Краснодар
от 75 000 ₽
DimaTech Ltd Краснодар
от 140 000 до 140 000 ₽