Как удалить элемент из json python
Перейти к содержимому

Как удалить элемент из json python

  • автор:

Удалить/изменить элемент json

Изменить элемент в json
Здравствуйте! Я новичок в пайтоне Есть json с названием products надо написать функцию на пайтоне.

Изменить в json элемент только один раз
Здравствуйте! Я не долго изучаю python Надо написать функцию для перезаписывание информации в.

Добавить элемент x в конец структуры, удалить последний элемент, найти минимальный элемент
Условие задачи такое: Вам требуется реализовать структуру данных, выполняющую следующие.

2421 / 1463 / 633
Регистрация: 01.11.2021
Сообщений: 2,269

Лучший ответ

Сообщение было отмечено anonymys56964 как решение

Решение

1 2 3 4 5 6 7 8 9 10
def deleteprod(): with open('products.json') as json_data: data = json.load(json_data) for i in data["products"]: if i["id"] == 1: data["products"].remove(i) with open('products.json', 'w') as outfile: json.dump(data, outfile, indent=4)

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Как увидеть весь массив History, и возможно ли изменить/удалить определённый элемент?
Как увидеть весь массив HISTORY , и возможно ли изменить или удалить определённый елемент ?

Как с помошью System.Text.Json пройтись по всему Json дереву и удалить пустых детей?
Нужно сделать универсальный метод удаления пустых Json фрагментов в переданном Json. К примеру.

Создать json элемент в python в пустом json файле
Здравствуйте, я уже умею загружать информацию в готовый json файл Допустим есть json файл.

Как удалить из json python?

Здраствуйте, решил по учится работать с json на python и возникла проблема, когда я сохраняю данные в json, то как удалить эти данные если у меня в этом json словаре хронятся не одни значение а много?
Примерно так выглядит json файл когда я сохраняю данные туда
[
«user_id»: 1,
«first_name»: «Elova»,
«last_name»: «Elizaveta»
>,
«user_id»: 2,
«first_name»: «Alex»,
«last_name»: «Petrov»
>
]

как мне удалить именно json данные только второго объекта?

  • Вопрос задан более трёх лет назад
  • 2591 просмотр

Комментировать
Решения вопроса 1

NeiroNx

Программист
Вообще в питоне есть del

data = [ < "user_id": 1, "first_name": "Elova", "last_name": "Elizaveta" >, < "user_id": 2, "first_name": "Alex", "last_name": "Petrov" >] del data[1]

Ответ написан более трёх лет назад
Нравится 3 4 комментария
noob222 @noob222 Автор вопроса
а как потом сохранить это в json файле?

NeiroNx

#сохранить так with open("D:\\myfile.json","w",encoding="utf-8") as fp: json.dump(data,fp,ensure_ascii=False,indent=4) #загрузить так with open("D:\\myfile.json","r",encoding="utf-8") as fp: data=json.load(fp)

noob222 @noob222 Автор вопроса

Александр, такая запись не пойдет, он мне будет каждый раз когда я захочу добавить данные он будет перезаписывать а не добавлять

noob222, Так приведи конкретный пример, какие манипуляции с данными нужны тогда. А то сначала вопрос был «как удалить», а потом возникло «я добавляю».
Выше уже предлагали стандартную логику

#загружаем json из файла with open("D:\\myfile.json","r",encoding="utf-8") as fp: data=json.load(fp) # добавляем/удаляем из data . # сохраняем результат в файл with open("D:\\myfile.json","w",encoding="utf-8") as fp: json.dump(data,fp,ensure_ascii=False,indent=4)

Python Удаление элементов набора

Чтобы удалить элемент из набора, используйте метод remove() , или метод discard().

Пример

Удалите «банан» с помощью метода remove()

Примечание: Если удаляемый элемент не существует, функция remove() вызовет ошибку.

Пример

Удалите «банан» с помощью метода discard().

Примечание: Если удаляемый элемент не существует, discard() НЕ вызовет ошибку.

Вы также можете использовать метод pop() для удаления элемента, но этот метод удалит последний элемент last. Помните, что наборы неупорядочены, поэтому вы не будете знать, какой элемент будет удален.

Возвращаемое значение метода pop() удаленный элемент.

Пример

Удалите последний элемент с помощью метода pop().

Примечание: Наборы неупорядочены, поэтому при использовании метода pop() вы не знаете, какой элемент будет удален.

Пример

Метод clear() очищает набор:

Пример

Ключевое слово del полностью удалит набор:

Мы только что запустили
SchoolsW3 видео

ВЫБОР ЦВЕТА

colorpicker

курс сегодня!

Сообщить об ошибке

Если вы хотите сообщить об ошибке или внести предложение, не стесняйтесь отправлять на электронное письмо:

Ваше предложение:

Спасибо Вам за то, что помогаете!

Ваше сообщение было отправлено в SchoolsW3.

ТОП Учебники
ТОП Справочники
ТОП Примеры
Получить сертификат

SchoolsW3 оптимизирован для бесплатного обучения, проверки и подготовки знаний. Примеры в редакторе упрощают и улучшают чтение и базовое понимание. Учебники, ссылки, примеры постоянно пересматриваются, чтобы избежать ошибок, но не возможно гарантировать полную правильность всего содержания. Некоторые страницы сайта могут быть не переведены на РУССКИЙ язык, можно отправить страницу как ошибку, так же можете самостоятельно заняться переводом. Используя данный сайт, вы соглашаетесь прочитать и принять Условия к использованию, Cookies и политика конфиденциальности.

Как удалить элемент из .json файла?

Подскажите, пожалуйста, каким образом можно удалить элемент из этого файла по ключу в Python? Спасибо!

Отслеживать
7,722 13 13 золотых знаков 25 25 серебряных знаков 54 54 бронзовых знака
задан 16 июн 2022 в 21:08
Oleksiy Lavrynenko Oleksiy Lavrynenko
19 5 5 бронзовых знаков
json_data.pop(‘название_ключа’)
16 июн 2022 в 21:21

3 ответа 3

Сортировка: Сброс на вариант по умолчанию

Из вопроса не очень понятно, что вы пытаетесь удалить. Вот пример как удалить из первого элемента salary

import json a = '''< "personal": [ < "name": "Вася", "salary": 5000 >, < "name": "Саша", "salary": 6000 >]>''' dict_ = json.loads(a) dict_["personal"][0].pop("salary") print(dict_) 

При работе с файлом

import json with open("test.json", encoding="utf8") as file: dict_ = json.load(file) dict_["personal"][0].pop("salary") with open("test.json", "w", encoding="utf8") as file: json.dump(dict_, file, ensure_ascii=False) 

Отслеживать
ответ дан 16 июн 2022 в 21:41
7,722 13 13 золотых знаков 25 25 серебряных знаков 54 54 бронзовых знака

Спасибо всем за комментарии. Нашел следующий вариант (так как непонятно было, нужно ли удалять первый или какой-то неопределенный элемент .json — файла):

user_for_del = str(input('Введите имя удаляемого сотрудника\n')) print(user_for_del) with open('personal.json', 'r', encoding='utf-8') as f: # открыли файл data = json.load(f) # загнали все из файла в переменную minimal = 0 for txt in data['personal']: print('Запись №:', minimal) print(txt['name'], ':', txt['salary']) if txt['name'] == user_for_del: print('Запись будет удалена') data['personal'].pop(minimal) else: None minimal = minimal + 1 print('Итоговый результат: ') print(data) print('А теперь записываем итоговый файл') with open('personal.json', 'w', encoding='utf8') as outfile: json.dump(data, outfile, ensure_ascii=False, indent=2) 

Благодаря этой конструкции можно шерстить .json — файл, находить нужные записи и удалять . не думаю, что изобрел велосипед, но все же 🙂

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *