JavaRush/Курси/Модуль 1: Python Core/Зміна словника

Зміна словника

Відкрита

5.1 Додавання елементів

Ми вже навчилися працювати з елементами словника, тепер давайте розберемося, як просто і швидко змінювати цей самий словник. Почнемо, як зазвичай, з додавання елементів.

Додавання одного елемента

Для додавання нового елемента в словник можна використовувати квадратні дужки []. Якщо ключ вже існує, його значення буде оновлено.

person = {"name": "Alice", "age": 25}

# Додаємо новий елемент в словник
person["city"] = "New York"

# Виводимо оновлений словник
print(person)  # Вивід: {'name': 'Alice', 'age': 25, 'city': 'New York'}

Додавання елемента, якщо ключ відсутній

Іноді потрібно додати елемент тільки в тому випадку, якщо ключ ще не присутній в словнику. Це можна зробити, використовуючи умовний вираз.

person = {"name": "Alice", "age": 25}

# Додаємо елемент тільки якщо ключ відсутній
if "city" not in person:
    person["city"] = "New York"

# Виводимо оновлений словник
print(person)  # Вивід: {'name': 'Alice', 'age': 25, 'city': 'New York'}

Додавання кількох елементів з використанням методу update()

Метод update() дозволяє додавати кілька пар ключ-значення одночасно. Можна передати інший словник або ітерований об'єкт, що містить пари ключ-значення.

person = {"name": "Alice", "age": 25}
updates = {"city": "New York", "country": "USA"}

# Оновлюємо словник новими елементами
person.update(updates)

# Виводимо оновлений словник
print(person)  # Вивід: {'name': 'Alice', 'age': 25, 'city': 'New York', 'country': 'USA'}

Також можна використовувати іменовані аргументи:

person = {"name": "Alice", "age": 25}

# Використовуємо іменовані аргументи для додавання елементів
person.update(city="New York", country="USA")

# Виводимо оновлений словник
print(person)  # Вивід: {'name': 'Alice', 'age': 25, 'city': 'New York', 'country': 'USA'}

5.2 Зміна елементів

Зміна елементів працює так само, як і додавання, але якщо у ключа вже було старе значення, то воно буде замінено на нове.

Оновлення значення по ключу

Значення в словнику можна оновити, просто присвоївши нове значення існуючому ключу.

person = {"name": "Alice", "age": 25, "city": "New York"}

# Оновлюємо значення по ключу
person["age"] = 26

# Виводимо оновлений словник
print(person)  # Вивід: {'name': 'Alice', 'age': 26, 'city': 'New York'}

Використання методу setdefault()

Метод setdefault() повертає значення для вказаного ключа. Якщо ключ відсутній, він додається в словник з заданим значенням за замовчуванням.

person = {"name": "Alice", "age": 25}

# Використовуємо setdefault для додавання елемента
city = person.setdefault("city", "New York")

# Виводимо значення міста
print(city)  # Вивід: New York

# Виводимо оновлений словник
print(person)  # Вивід: {'name': 'Alice', 'age': 25, 'city': 'New York'}

Оновлення елементів за допомогою методу update()

Ви можете використовувати метод update() для оновлення значень елементів в словнику, використовуючи інший словник або ітерований об'єкт.

person = {"name": "Alice", "age": 25}
updates = {"age": 30, "city": "New York"}

# Оновлюємо словник за допомогою методу update()
person.update(updates)

# Виводимо оновлений словник
print(person)  # Вивід: {'name': 'Alice', 'age': 30, 'city': 'New York'}

5.3 Видалення елементів словника

Видаляти елементи з словника можна кількома способами:

Видалення елемента з використанням оператора del

Оператор del видаляє пару ключ-значення з словника по вказаному ключу.

person = {"name": "Alice", "age": 25, "city": "New York"}

# Видаляємо елемент по ключу
del person["age"]

# Виводимо оновлений словник
print(person)  # Вивід: {'name': 'Alice', 'city': 'New York'}

Видалення елемента з використанням методу pop(key, def_value)

Метод pop() видаляє елемент з вказаним ключем і повертає його значення. Якщо ключ відсутній, можна вказати значення за замовчуванням, щоб уникнути помилки.

person = {"name": "Alice", "age": 25, "city": "New York"}

# Видаляємо елемент і отримуємо його значення
age = person.pop("age")

# Виводимо видалене значення
print(age)  # Вивід: 25

# Виводимо оновлений словник
print(person)  # Вивід: {'name': 'Alice', 'city': 'New York'}

Видалення останнього доданого елемента з використанням методу popitem()

Метод popitem() видаляє і повертає останню додану пару ключ-значення. Він особливо корисний у старих версіях Python для роботи з неупорядкованими словниками.

person = {"name": "Alice", "age": 25, "city": "New York"}

# Видаляємо і отримуємо останню додану пару ключ-значення
last_item = person.popitem()

# Виводимо видалену пару
print(last_item)  # Вивід: ('city', 'New York')

# Виводимо оновлений словник
print(person)  # Вивід: {'name': 'Alice', 'age': 25}

Очищення словника з використанням методу clear()

Метод clear() видаляє всі елементи з словника, залишаючи його порожнім.

person = {"name": "Alice", "age": 25, "city": "New York"}

# Очищаємо словник
person.clear()

# Виводимо очищений словник
print(person)  # Вивід: {}
2
Задача
Модуль 1: Python Core,  7 рівень,  4 лекція
Недоступна
Студент - це звучить гордо.
Студент - це звучить гордо.
2
Задача
Модуль 1: Python Core,  7 рівень,  4 лекція
Недоступна
Редактор.
Редактор.
Коментарі (5)
  • популярні
  • нові
  • старі
Щоб залишити коментар, потрібно ввійти в систему
Микола
Рівень 19
19 січня, 00:58
book_update = {"name": "Гарі Потер", "autor": "Джоан Роулинг", "year": 1996} book_update["year"] = 1997 print(book_update) publishing = book_update.setdefault("publishing", "Bloomsbury Publishing PLC") print(publishing) book_update.update({"genre": "fantastic"}) print(book_update) це розв'язання другої задачі, що не так? Помилок немає але задачу як правильну не приймає, такий принцип був і в першому завданні
Микола
Рівень 19
19 січня, 00:35
Цікаво, в першому завданні я написав код правильно практично індентичний тому що в правильному роз'язанні а він його посчитав як за неправильну відповідь
Semen
Рівень 21
25 червня 2025, 11:25
Ще не забудьте змінити текст на український, на сторінці, яка відображається, коли сайт недоступний. Випадково зауважив. Там пише, щось, типу "Ми верньомся.. Сейчас ми зайняти абнавленієм нашева сайта.."
Pavlo Kushnir Працює в друкарня
2 червня 2025, 23:39
)) ребята, наймите редактора! Теперь у вас примеры из российского сайта и реклама российского издательства АСТ book.update({ "назва": "Анна Кареніна", "автор": "Лев Толстой", "рік видання": 1877 }) print("Після оновлення кількох елементів:", book)
negoda @poviranacze - Telegram в Python Intern (Train
20 липня 2025, 14:44
Не понимаю почему в примере не может быть российской книги, это же просто пример. Да и на курсе тысячи задач, и переделывать каждую в таких мелочах, ну(