Вкладений словник Python (з прикладами)

У цій статті ви дізнаєтесь про вкладений словник у Python. Більш конкретно, ви навчитеся створювати вкладений словник, отримувати доступ до елементів, модифікувати їх тощо за допомогою прикладів.

У Python словник - це невпорядкована колекція предметів. Наприклад:

 словник = ('key': 'value', 'key_2': 'value_2')

Тут словник має key:valueпару, укладену в фігурні дужки ().

Щоб дізнатись більше про словник, відвідайте словник Python.

Що таке вкладений словник на Python?

У Python вкладений словник - це словник всередині словника. Це колекція словників в єдиний словник.

 nested_dict = ('dictA': ('key_1': 'value_1'), 'dictB': ('key_2': 'value_2'))

Тут nested_dict - це вкладений словник зі словником dictAта dictB. Це два словники, кожен із яких має власний ключ і значення.

Створіть вкладений словник

Ми збираємося створити словник людей у ​​словнику.

Приклад 1: Як створити вкладений словник

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female')) print(people)

Коли ми запускаємо програму вище, вона видасть:

 (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex ':' Жінка '))

У наведеній вище програмі people - це вкладений словник. Внутрішній словник 1і 2призначається людям. Тут, як в словнику є ключ name, age, sexз різними значеннями. Тепер ми друкуємо результати людей.

Доступ до елементів вкладеного словника

Для доступу до елемента вкладеного словника ми використовуємо ()синтаксис індексації в Python.

Приклад 2: Доступ до елементів за допомогою синтаксису ()

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female')) print(people(1)('name')) print(people(1)('age')) print(people(1)('sex'))

Коли ми запускаємо програму вище, вона видасть:

 Іван 27 Чоловік

У наведеній вище програмі ми друкуємо значення ключа, nameтобто people(1)('name')з внутрішнього словника 1. Подібним чином ми друкуємо значення ageі sexпо одному.

Додати елемент до вкладеного словника

Приклад 3: Як змінити або додати елементи у вкладеному словнику?

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female')) people(3) = () people(3)('name') = 'Luna' people(3)('age') = '24' people(3)('sex') = 'Female' people(3)('married') = 'No' print(people(3))

Коли ми запускаємо програму вище, вона видасть:

 ('ім'я': 'Луна', 'вік': '24', 'стать': 'Жінка', 'одружена': 'Ні')

У наведеній вище програмі ми створюємо порожній словник 3всередині словника люди.

Потім ми додаємо key:valueпару, тобто people(3)('Name') = 'Luna'всередину словника 3. Крім того , ми робимо це для ключа age, sexі marriedодин за іншим. Коли ми друкуємо people(3), ми отримуємо key:valueпари словників 3.

Приклад 4: Додайте ще один словник до вкладеного словника

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female'), 3: ('name': 'Luna', 'age': '24', 'sex': 'Female', 'married': 'No')) people(4) = ('name': 'Peter', 'age': '29', 'sex': 'Male', 'married': 'Yes') print(people(4))

Коли ми запускаємо програму вище, вона видасть:

 ('ім'я': 'Петро', 'вік': '29', 'стать': 'Чоловік', 'одружений': 'Так')

У наведеній вище програмі ми присвоюємо словниковий літерал people(4). Буквальні є ключі name, ageі sexз відповідними значеннями. Потім ми друкуємо people(4), щоб побачити, що словник 4додано до вкладених словників.

Видалити елементи з вкладеного словника

У Python ми використовуємо оператор “del” для видалення елементів із вкладеного словника.

Приклад 5: Як видалити елементи з вкладеного словника?

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female'), 3: ('name': 'Luna', 'age': '24', 'sex': 'Female', 'married': 'No'), 4: ('name': 'Peter', 'age': '29', 'sex': 'Male', 'married': 'Yes')) del people(3)('married') del people(4)('married') print(people(3)) print(people(4))

Коли ми запускаємо програму вище, вона видасть:

 ('name': 'Luna', 'age': '24', 'sex': 'Female') ('name': 'Peter', 'age': '29', 'sex': 'Male')

У наведеній вище програмі ми видаляємо key:valueпари marriedз внутрішнього словника 3та 4. Потім ми друкуємо people(3)і people(4)для підтвердження змін.

Приклад 6: Як видалити словник із вкладеного словника?

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female'), 3: ('name': 'Luna', 'age': '24', 'sex': 'Female'), 4: ('name': 'Peter', 'age': '29', 'sex': 'Male')) del people(3), people(4) print(people)

Коли ми запускаємо програму вище, вона видасть:

 (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex ':' Жінка '))

У наведеній вище програмі ми видаляємо як внутрішній словник, так 3і 4використання delз вкладеного словника люди. Потім ми друкуємо вкладені словники для підтвердження змін.

Ітерація через вкладений словник

Використовуючи цикли for, ми можемо перебирати кожен елемент у вкладеному словнику.

Example 7: How to iterate through a Nested dictionary?

 people = (1: ('Name': 'John', 'Age': '27', 'Sex': 'Male'), 2: ('Name': 'Marie', 'Age': '22', 'Sex': 'Female')) for p_id, p_info in people.items(): print("Person ID:", p_id) for key in p_info: print(key + ':', p_info(key))

When we run above program, it will output:

 Person ID: 1 Name: John Age: 27 Sex: Male Person ID: 2 Name: Marie Age: 22 Sex: Female

In the above program, the first loop returns all the keys in the nested dictionary people. It consist of the IDs p_id of each person. We use these IDs to unpack the information p_info of each person.

The second loop goes through the information of each person. Then, it returns all of the keys name, age, sex of each person's dictionary.

Now, we print the key of the person’s information and the value for that key.

Key Points to Remember:

  1. Nested dictionary is an unordered collection of dictionary
  2. Slicing Nested Dictionary is not possible.
  3. We can shrink or grow nested dictionary as need.
  4. Like Dictionary, it also has key and value.
  5. До словника можна отримати доступ за допомогою ключа.

Цікаві статті...