3.1 Відображення дочірніх елементів
Як ти вже знаєш, словник усередині зберігає пари елементів ключ-значення. У нього є методи, які дозволяють нам отримати доступ до цих даних: keys(), values() і items(). Нижче я розкажу про них детальніше.
Важливо! Ці методи повертають не просто списки елементів, а так звані відображення (view). Відображення словника надають динамічне уявлення про ключі, значення та пари ключ-значення, що містяться в словнику. Ці відображення автоматично оновлюються при зміні словника.
Метод keys()
Метод keys() повертає представлення всіх ключів у словнику. Результатом є об'єкт dict_keys, який підтримує ітерацію та інші операції, аналогічні множинам.
person = {"name": "Alice", "age": 25, "city": "New York"}
keys = person.keys()
print(keys) # dict_keys(['name', 'age', 'city'])
Ітерація по ключах
for key in person.keys():
print(key)
# Вивід: # name # age # city
Метод values()
Метод values() повертає представлення всіх значень у словнику. Результатом є об'єкт dict_values, який також підтримує обхід циклом.
person = {"name": "Alice", "age": 25, "city": "New York"}
values = person.values()
print(values) # dict_values(['Alice', 25, 'New York'])
Ітерація по значенням
for value in person.values():
print(value)
# Вивід: # Alice # 25 # New York
Метод items()
Метод items() повертає представлення всіх пар ключ-значення у словнику. Результатом є об'єкт dict_items, який підтримує роботу з циклами.
person = {"name": "Alice", "age": 25, "city": "New York"}
items = person.items()
print(items) # dict_items([('name', 'Alice'), ('age', 25), ('city', 'New York')])
Ітерація по парах ключ-значення
for key, value in person.items():
print(f"{key}: {value}")
# Вивід: # name: Alice # age: 25 # city: New York
3.2 Динамічне оновлення
Однією з важливих властивостей відображень словника є їх динамічне оновлення. Це означає, що, якщо словник змінюється, відображення автоматично відображають ці зміни.
person = {"name": "Alice", "age": 25}
keys = person.keys()
print(keys) # dict_keys(['name', 'age'])
# Додавання нового елемента
person["city"] = "New York"
print(keys) # dict_keys(['name', 'age', 'city'])
Перетворення відображень в інші колекції
Відображення словника можна перетворити в інші колекції, такі як списки, множини або кортежі, для виконання додаткових операцій.
person = {"name": "Alice", "age": 25, "city": "New York"}
# Перетворення keys() в список
keys_list = list(person.keys())
print(keys_list) # ['name', 'age', 'city']
# Перетворення values() в множину
values_set = set(person.values())
print(values_set) # {'Alice', 25, 'New York'}
# Перетворення items() в список кортежів
items_list = list(person.items())
print(items_list) # [('name', 'Alice'), ('age', 25), ('city', 'New York')]
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ