Содержание

Методы и операции над словарями dict в Python.

Что из себя представляет тип данных словарь dict можно посмотреть в разделе «Встроенные типы данных»

Здесь представлены операции, которые поддерживают словари и, следовательно, пользовательские типы словарей также должны их поддерживать.


Представления словарей dict.keys, dict.values и dict.items в Python.

Объекты, возвращаемые методами словарей dict.keys(), dict.values() и dict.items() являются объектами-представлениями. Они обеспечивают динамическое представление записей словаря. Другими словами, при изменении словаря представление будет отража

Исходный словарь для представления dictview.mapping в Python.

Атрибут представления словаря dictview.mapping возвращает types.MappingProxyType, который обертывает исходный словарь, на который ссылается представление.

Получение списка ключей словаря list(dict) в Python.

Список ключей словаря можно получить в результате преобразования словаря dict в список, используя встроенный класс list(). Метод dict.keys() возвращает список-представление всех ключей, используемых в словаре dict.

Количество элементов в словаре len(dict) в Python.

Операции len(dict) возвращает количество элементов в словаре dict. Функция len(dictview) так же возвратит количество элементов в словаре, если dictview является представлением словаря dict.

Доступ к значению словаря по ключу dict[key] в Python.

Операция dict[key] вернет элемент словаря dict с ключом key. Вызывает исключение KeyError, если ключ key отсутствует в словаре.

Добавление/изменение значения словаря по ключу key в Python.

Операция d[key] = value добавит в словарь dict новый элемент — пару ключ-значение. Если в словаре существует ключ key то эта операция присвоит ключу key новое значение value.

Удаление значения словаря по ключу в Python.

Операция del dict[key] удалит элемент словаря dict, соответствующий ключу key. Операция удаления бросает исключение KeyError, если ключ key отсутствует в словаре dict.

Проверка наличия/отсутствия ключа key в словаре dict в Python.

Представленные операции проверки вхождения ключа key в словарь dict вернут True, если у словаря dict ЕСТЬ ключ key, если НЕТ то False или наоборот.

Проверка наличия/отсутствия значения value в словаре Python.

Операция val in dict.values() вернет True, если в словаре dict любой из ключей имеет значение val, если такое значение не найдено то вернет False.

Проверка наличия/отсутствия пары (key, value) в словаре dict в Python.

Операция key_val in dict.items() вернет True, если в словаре dict ЕСТЬ проверяемая пара key_val ключ-значение, если пара не найдена то вернет False.

Итерирование по ключам и значениям словаря Python.

Операция iter(dict) вернет итератор по ключам словаря dict. Это операция является ссылкой на итератор, созданный из списка-представления ключей ярлык для iter(dict.keys()).

Метод dict.clear() в Python. Очистить словарь.

Метод dict.clear() производит удаление всех элементов из словаря dict.

Метод dict.copy() в Python, копия словаря.

Метод dict.copy() вернет мелкую копию словаря dict.

Метод dict.fromkeys() в Python, словарь с ключами по умолчанию.

Метод dict.fromkeys() встроенного класса dict() создает новый словарь с ключами из последовательности iterable и значениями, установленными в value.

Метод dict.get() в Python, значение по умолчанию если ключа нет.

Метод dict.get() возвращает значение для ключа key, если ключ находится в словаре, если ключ отсутствует то вернет значение default. Если значение default не задано и ключ key не найден, то метод вернет значение None.

Метод dict.items() в Python, список кортежей.

Метод dict.items() возвращает новый список-представление пар элементов словаря dict. Другими словами возвращает список кортежей вида (key, value), состоящий из элементов словаря.

Метод dict.keys() в Python, список ключей словаря.

Метод dict.keys() возвращает новый список-представление всех ключей dict_keys, содержащихся в словаре dict. Все изменения, такие как удаление или добавление ключей в словаре сразу отражаются на этом представлении.

Метод dict.values() в Python, список значений словаря.

Метод dict.values() возвращает новый список-представление всех значений dict_values, содержащихся в словаре dict. Все изменения, такие как удаление, изменение или добавление значений в словаре сразу отражаются на этом представлении.

Метод dict.pop() в Python

Метод dict.pop() вернет значение ключа key, а также удалит его из словаря dict. Если ключ не найден, то вернет значение по умолчанию default.

Метод dict.popitem() в Python, получить пару ключ/значение.

Метод dict.popitem() удалит и вернет пару (key, value) из словаря. Пары возвращаются в порядке LIFO (последним пришёл — первым ушёл).

Метод dict.setdefault() в Python, получает/вставляет значение ключа.

Метод dict.setdefault() возвращает значение ключа key находящегося в словаре dict. Если ключа нет, то вставит его в словарь с указанным значением.

Метод dict.update() в Python, обновление/дополнение словаря.

Метод dict.update() обновляет словарь dict с помощью пар ключ-значение из other, перезаписывая существующие ключи. Если ключ в словаре отсутствует, то он добавляется. Метод ничего не возвращает.

Объединение двух словарей в новый словарь Python.

Выражение {**dict1, **dict2} создает **новый словарь** с объединенными ключами и значениями из dict1 и dict2, которые оба должны быть словарями.

Сортировка словаря по значению и/или ключу в Python.

Сортировка словарей производится при помощи встроенной функцией sorted() и происходит немного сложнее чем сортировка списков или кортежей. В словарях необходимо сортировать список кортежей (key, val) получаемых методом dict.items(), а затем обратно преобразовывать в словарь.

Обратный порядок/реверс словаря reversed(dict) в Python.

Операция reversed(dict) возвращает обратный итератор по ключам словаря dict. Является ссылкой на операцию reversed(dict. keys()).

Генератор словаря и его использование в Python.

Для создания словарей из произвольных ключей и значений можно использовать генераторы словарей. При помощи генератора словаря можно создать словарь из списка с каким-то значением по умолчанию для значений ключей, тем самым воспроизвести метод dict.fromkeys().

Фильтр словаря по ключам и/или значениям в Python.

Отфильтровать ключи и значения словаря Python можно двумя способами. Первый — при помощи выражения генератора словаря, а второй с помощью встроенной функции filter().

Словарь как фабрика функций в Python.

Так как функции в Python являются объектами, то можно заменить значения ключей словаря функциями и возвращать их, если ключи совпадают.

Язык программирования «Python». Словари Python. Операции и методы словаря

Словари (dict)

В Python имеется еще один составной тип данных, называемый словарем, который похож на список. Словарь (dict) — неупорядоченная коллекция произвольных объектов с доступом по ключу. Словарь более известен как ассоциативный массив. Словарь состоит из набора пар «Ключ-Значение». И в отличии от списка, где к каждому элементу можно обратиться по его порядковому номеру(индексу), в словаре обращение к элементу происходит по ключу.

Создание словаря

Вы можете определить словарь, включив в фигурные скобки список пар «Ключ-значение», разделенных запятыми. Двоеточие (:) отделяет каждый ключ от связанного с ним значения:

 d = {
    ключ 1: значение,
    ключ 2: значение,
      ....
    ключ N: значение
}

Пример: мы можем связать (ассоциировать) названия футбольной команды с городом, где она основана:

 teams = {
    'Arsenal': 'London',
    'Bayern': 'Munich',
    'PSG': 'Paris',
}
Доступ к значениям словаря

Для получения значения внутри пары вы должны обратиться по ключу dict[key]

>>> teams['PSG']
'Paris'
>>> teams['Arsenal']
'London'

Если попытаетесь обратиться к ключу, которого нет, получится исключение типа KeyError

>>> teams['Chelsea']
Traceback (most recent call last):
  File "", line 1, in 
    teams['Chelsea']
KeyError: 'Chelsea'
Добавление нового элемента

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

>>> teams
{'Arsenal': 'London', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> teams['Sporting'] = 'Lisbon'
>>> teams
{'Arsenal': 'London', 'Bayern': 'Munich', 'PSG': 'Paris', 'Sporting': 'Lisbon'}
Изменение элемента

Чтобы изменить значение существующего ключа, нужно обратиться по этому ключу и присвоить новое значение

>>> teams
{'Arsenal': 'London', 'Bayern': 'Munich', 'PSG': 'Paris', 'Sporting': 'Lisbon'}
>>> teams['Arsenal']='Лондон'
>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris', 'Sporting': 'Lisbon'}
Удаление элемента

Чтобы удалить элемент словаря, нужно воспользоваться командой

del

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris', 'Sporting': 'Lisbon'}
>>> del teams['Sporting']
>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
Операции со словарем
Нахождение длины словаря

Чтобы найти длину словаря(количество пар «ключ-значение»), нужно воспользоваться функцией len()

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> len(teams)
3
>>> len({})
0
>>> len({'a':[1,2,3]})
1
Проверка вхождения ключа в словарь

Для этого нужно воспользоваться командой in.

Обратите внимание, что поиск происходит только среди ключей словаря

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> 'Bayern' in teams
True
>>> 'Munich' in teams
False
Методы словаря
Метод .clear()

Полностью очищает словарь

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> teams.clear()
>>> teams
{}
Метод .get(key [,default])

Метод, который принимает обязательный параметр — значение ключа. В случае, если данный ключ имеется в словаре, возвращается его значение. В противном случае вернется None, либо значение default (если оно было передено)

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> teams.get('PSG')
'Paris'
>>> teams.get('Porto')
>>> print(teams.get('Porto'))
None
>>> teams. get('Porto','Not exist')
'Not exist'
>>> teams.get('Porto',999)
999
Метод .setdefault(key [,default])

Метод, который принимает обязательный параметр — значение ключа. Возвращает значение ключа, но если его нет создает ключ с значением default (по умолчанию None).

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> teams.setdefault('PSG')
'Paris'
>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> teams.setdefault('Porto')
>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris', 'Porto': None}
>>> teams.setdefault('Benfika','Lisbon')
'Lisbon'
>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris', 'Porto': None, 'Benfika': 'Lisbon'}
Метод .pop(key [,default])

Метод, который удаляет ключ и возвращает значение. Если ключа нет, возвращает default (по умолчанию бросает исключение).

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris', 'Porto': None, 'Benfika': 'Lisbon'}
>>> print(teams.pop('Porto'))
None
>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris', 'Benfika': 'Lisbon'}
>>> teams.pop('Benfika','Hello')
'Lisbon'
>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> teams.pop("Chelsea")
Traceback (most recent call last):
  File "", line 1, in 
    teams.pop("Chelsea")
KeyError: 'Chelsea'
>>> teams.pop("Chelsea","Hello")
'Hello'
Метод .keys()

Метод, который возвращает коллекцию всех ключей в словаре

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> teams.keys()
dict_keys(['Arsenal', 'Bayern', 'PSG'])
Метод .values()

Метод, который возвращает коллекцию всех значений в словаре

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> teams. values()
dict_values(['Лондон', 'Munich', 'Paris'])
Метод .items()

Метод, который возвращает коллекцию всех пар «ключ-значение»

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> teams.items()
dict_items([('Arsenal', 'Лондон'), ('Bayern', 'Munich'), ('PSG', 'Paris')])
Обход элементов словаря в цикле
for

При обходе элементов в переменной i по умолчанию будут сохранятся значения ключей

>>> teams
{'Arsenal': 'Лондон', 'Bayern': 'Munich', 'PSG': 'Paris'}
>>> for i in teams:
	print(i)
Arsenal
Bayern
PSG

Но, зная ключ, можно обратиться к значению этого ключа

>>> for i in teams:
	print(i, teams[i])
Arsenal Лондон
Bayern Munich
PSG Paris

Обойти только значения словаря можно при использовании метода .values()

>>> for i in teams.values():
	print(i)
Лондон
Munich
Paris

При помощи метода . items() можно обходить элементы, получая сразу и ключ и значение

>>> for item in teams.items():
	key, value = item[0], item[1]
	print(key, value)
Arsenal Лондон
Bayern Munich
PSG Paris
>>> for key, value in teams.items():
	print(key, value)
Arsenal Лондон
Bayern Munich
PSG Paris

Словарь Python (с примерами)

В этом руководстве вы узнаете о словарях Python; как они создаются, доступ, добавление, удаление элементов из них и различные встроенные методы.

Словарь Python представляет собой упорядоченный набор (начиная с Python 3.7 ) элементов. Он хранит элементы в пар ключ/значение . Здесь ключей являются уникальными идентификаторами, которые связаны с каждым значением .

Давайте посмотрим пример,

Если мы хотим хранить информацию о странах и их столицах, мы можем создать словарь с названиями стран в виде ключей и столиц в виде значений .

Ключи Значения
Непал Катманду
Италия Рим
Англия Лондон

Создать словарь в Python

Вот как мы можем создать словарь в Python.

 capital_city = {"Непал": "Катманду", "Италия": "Рим", "Англия": "Лондон"}
print(capital_city) 

Вывод

  {'Непал': 'Катманду', 'Италия': 'Рим', 'Англия': 'Лондон'}  

В приведенном выше примере мы создали словарь с именем capital_city . Здесь

  1. Ключи это "Непал" , "Италия" , "Англия"
  2. Значения : "Катманду" , "Рим" , "Лондон"

Примечание : Здесь ключи и значения имеют строковый тип. У нас также может быть ключей и значений разных типов данных.


Пример 1: Словарь Python

 # словарь с ключами и значениями разных типов данных
числа = {1: «Один», 2: «Два», 3: «Три»}
печать(цифры) 

Выход

  [3: "Три", 1: "Один", 2: "Два"]  

В приведенном выше примере мы создали словарь с именем чисел . Здесь ключей имеют целочисленный тип, а значений имеют строковый тип.


Добавление элементов в словарь Python

Мы можем добавлять элементы в словарь, используя имя словаря с [] . Например,

 capital_city = {"Непал": "Катманду", "Англия": "Лондон"}
print("Исходный словарь: ",capital_city)
Capital_city["Япония"] = "Токио"
print("Обновленный словарь: ",capital_city) 

Выход

  Исходный словарь: {'Непал': 'Катманду', 'Англия': 'Лондон'}
Обновленный словарь: {'Непал': 'Катманду', 'Англия': 'Лондон', 'Япония': 'Токио'}  

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

 Capital_City["Japan"] = "Tokyo" 

Здесь мы добавили новый элемент в Capital_City с ключом : Japan и значением : Токио .


Изменить значение словаря

Мы также можем использовать [] для изменения значения, связанного с конкретным ключом. Например,

 student_id = {111: "Эрик", 112: "Кайл", 113: "Баттерс"}
print("Исходный словарь: ", student_id)
student_id[112] = "Стэн"
print("Обновленный словарь: ", student_id) 

Вывод

  Исходный словарь: {111: "Эрик", 112: "Кайл", 113: "Баттерс"}
Обновленный словарь: {111: «Эрик», 112: «Стэн», 113: «Баттерс»}  

В приведенном выше примере мы создали словарь с именем student_id . Первоначально значение, связанное с ключом 112 , равно «Кайл» . Теперь обратите внимание на строку

 student_id[112] = "Stan" 

Здесь мы изменили значение, связанное с ключом 112 , на "Stan" .


Доступ к элементам из словаря

В Python мы используем ключи для доступа к их соответствующим значениям. Например,

 student_id = {111: "Эрик", 112: "Кайл", 113: "Баттерс"}
print(student_id[111]) # печатает Эрика
print(student_id[113]) # печатает Баттерс 

Здесь мы использовали ключи для доступа к их соответствующим значениям.

Если мы попытаемся получить доступ к значению несуществующего ключа, мы получим ошибку. Например,

 student_id = {111: "Эрик", 112: "Кайл", 113: "Баттерс"}
распечатать (id_студента [211])
# Вывод: KeyError: 211 

Удаление элементов из Словаря

Мы используем оператор del для удаления элемента из словаря. Например,

 student_id = {111: "Эрик", 112: "Кайл", 113: "Баттерс"}
print("Исходный словарь: ", student_id)
del student_id[111]
print("Обновленный словарь", student_id) 

Вывод

  Исходный словарь: {111: "Эрик", 112: "Кайл", 113: "Баттерс"}
Обновленный словарь {112: «Кайл», 113: «Баттерс»}  

Здесь мы создали словарь с именем 9. 0067 идентификатор_студента . Обратите внимание на код

 del student_id[111] 

Оператор del удаляет элемент, связанный с ключом 111 .

Мы также можем удалить весь словарь, используя оператор del ,

 student_id = {111: "Эрик", 112: "Кайл", 113: "Баттерс"}
# удалить словарь student_id
del student_id
распечатать (id_студента)
# Вывод: NameError: имя 'student_id' не определено 

Мы получаем сообщение об ошибке, потому что мы удалили student_id словарь и student_id больше не существует.


Методы словаря Python

Методы, доступные со словарем, представлены в таблице ниже. Некоторые из них уже использовались в приведенных выше примерах.

Функция Описание
все() Возвращает True , если все ключи словаря истинны (или если словарь пуст).
любой() Вернуть True , если какой-либо ключ словаря верен. Если словарь пуст, вернуть False .
лен() Вернуть длину (количество элементов) в словаре.
отсортировано() Возвращает новый отсортированный список ключей в словаре.
очистить() Удаляет все элементы из словаря.
клавиши() Возвращает новый объект ключей словаря.
значения() Возвращает новый объект значений словаря

Проверка членства в словаре

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

 # Проверка принадлежности ключей словаря
квадраты = {1:1, 3:9, 5:25, 7:49, 9:81}
# Вывод: Истина
print(1 в квадратах) # печатает True
print(2 не в квадратах) # печатает True
# проверка членства только для ключа, а не для значения
print(49 в квадратах) # печатает false 

Output

  Верно
Истинный
False  

Итерация по словарю

Мы можем пройтись по каждому ключу в словаре, используя цикл for .

 # Перебор словаря
квадраты = {1:1, 3:9, 5:25, 7:49, 9:81}
для я в квадратах:
    печать (квадраты [i]) 

Выход

  1
9
25
49
81  

Здесь мы перебрали каждый ключ в словаре квадратов , используя цикл for .

Вложенный словарь Python (с примерами)

В этой статье вы узнаете о вложенном словаре в Python. В частности, вы научитесь создавать вложенные словари, получать доступ к элементам, изменять их и т. д. с помощью примеров.

В Python словарь представляет собой неупорядоченный набор элементов. Например:

словарь = {'ключ': 'значение',
'key_2': 'value_2'} 

Здесь словарь содержит пару ключ:значение , заключенную в фигурные скобки {} .

Чтобы узнать больше о словаре, посетите Python Dictionary.


Что такое вложенный словарь в Python?

В Python вложенный словарь — это словарь внутри словаря. Это коллекция словарей в один словарь.

nested_dict = {'dictA': {'key_1': 'value_1'},
                'dictB': {'key_2': 'value_2'}} 

Здесь nested_dict является вложенным словарем со словарем dictA и dictB . Это два словаря, каждый из которых имеет собственный ключ и значение.


Создать вложенный словарь

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

Пример 1: Как создать вложенный словарь

 people = {1: {'имя': 'Джон', 'возраст': '27', 'пол': 'Мужчина'},
          2: {'имя': 'Мари', 'возраст': '22', 'пол': 'женщина'}}
печать(люди) 

Когда мы запустим вышеуказанную программу, она выведет:

  {1: {'имя': 'Джон', 'возраст': '27', 'пол': 'мужчина'}, 2: {'имя': 'Мария', 'возраст': '22', ' секс': 'Женщина'}}  

В приведенной выше программе человек — это вложенный словарь. Внутренний словарь 1 и 2 присвоен людям . Здесь оба словаря имеют ключ name , age , sex с разными значениями. Теперь мы печатаем результат человек .


Доступ к элементам вложенного словаря

Чтобы получить доступ к элементу вложенного словаря, мы используем синтаксис indexing [] в Python.

Пример 2. Доступ к элементам с использованием синтаксиса [] 2: {‘имя’: ‘Мари’, ‘возраст’: ’22’, ‘пол’: ‘женщина’}} печать (люди [1] [‘имя’]) печать (люди [1] [‘возраст’]) print(people[1][‘sex’])

Когда мы запустим вышеуказанную программу, она выведет:

  Джон
27
Мужчина  

В приведенной выше программе мы печатаем значение ключа имя , используя, например, people[1]['name'] из внутреннего словаря 1 . Точно так же мы печатаем значения age и sex одно за другим.


Добавить элемент во вложенный словарь

Пример 3.

Как изменить или добавить элементы во вложенный словарь?
 человек = {1: {'имя': 'Джон', 'возраст': '27', 'пол': 'мужчина'},
          2: {'имя': 'Мари', 'возраст': '22', 'пол': 'женщина'}}
люди[3] = {}
люди[3]['имя'] = 'Луна'
люди[3]['возраст'] = '24'
люди[3]['пол'] = 'Женщина'
люди[3]['замужем'] = 'Нет'
печать (люди [3]) 

Когда мы запустим вышеуказанную программу, она выведет:

  {'имя': 'Луна', 'возраст': '24', 'пол': 'Женщина', 'замужем': 'Нет'}  

В приведенной выше программе мы создаем пустой словарь 3 внутри словаря человек .

Затем мы добавляем пару ключ:значение , то есть people[3]['Name'] = 'Luna' внутри словаря 3 . Аналогично делаем это для ключа возраст , пол и женатый один за другим. Когда мы печатаем people[3] , мы получаем пары ключ:значение пар словаря 3 .

Пример 4: Добавить еще один словарь во вложенный словарь 2: {‘имя’: ‘Мари’, ‘возраст’: ’22’, ‘пол’: ‘женщина’}, 3: {‘имя’: ‘Луна’, ‘возраст’: ’24’, ‘пол’: ‘женщина’, ‘замужем’: ‘Нет’}} people[4] = {‘имя’: ‘Питер’, ‘возраст’: ’29’, ‘пол’: ‘мужчина’, ‘женат’: ‘да’} напечатать(люди[4])

Когда мы запустим вышеуказанную программу, она выведет:

  {'имя': 'Питер', 'возраст': '29', 'пол': 'мужчина', 'женат': 'да'}  

В приведенной выше программе мы назначаем литерал словаря людям [4] . Литерал имеет ключи имя , возраст и пол с соответствующими значениями. Затем мы печатаем people[4] , чтобы увидеть, что словарь 4 добавлен во вложенный словарь people.


Удаление элементов из вложенного словаря

В Python мы используем оператор «del» для удаления элементов из вложенного словаря.

Пример 5: Как удалить элементы из вложенного словаря?

 человек = {1: {'имя': 'Джон', 'возраст': '27', 'пол': 'мужчина'},
          2: {'имя': 'Мари', 'возраст': '22', 'пол': 'женщина'},
          3: {'имя': 'Луна', 'возраст': '24', 'пол': 'женщина', 'замужем': 'нет'},
          4: {'имя': 'Питер', 'возраст': '29', 'пол': 'мужчина', 'женат': 'да'}}
дель люди [3] ['замужем']
дель люди [4] ['замужем']
печать (люди [3])
напечатать(люди[4]) 

Когда мы запустим вышеуказанную программу, она выведет:

  {'имя': 'Луна', 'возраст': '24', 'пол': 'женщина'}
{'имя': 'Питер', 'возраст': '29', 'пол': 'мужской'}  

В приведенной выше программе мы удаляем ключ:значение пар женатых из внутреннего словаря 3 и 4 . Затем мы печатаем человека[3] и человека[4] , чтобы подтвердить изменения.

Пример 6: Как удалить словарь из вложенного словаря?

 человек = {1: {'имя': 'Джон', 'возраст': '27', 'пол': 'мужчина'},
          2: {'имя': 'Мари', 'возраст': '22', 'пол': 'женщина'},
          3: {'имя': 'Луна', 'возраст': '24', 'пол': 'женщина'},
          4: {'имя': 'Питер', 'возраст': '29', 'пол': 'мужчина'}}
дель люди[3], люди[4]
print(people) 

Когда мы запустим вышеуказанную программу, она выведет:

  {1: {'имя': 'Джон', 'возраст': '27', 'пол': 'мужчина'}, 2: {'имя': 'Мария', 'возраст': '22', ' sex': 'Female'}}  

В приведенной выше программе мы удаляем оба внутренних словаря 3 и 4 с использованием del из вложенного словаря человек . Затем мы печатаем вложенный словарь человек для подтверждения изменений.


Перебор вложенного словаря

Используя циклы for, мы можем перебирать каждый элемент вложенного словаря.

Пример 7. Как выполнить итерацию по вложенному словарю?

 человек = {1: {'Имя': 'Джон', 'Возраст': '27', 'Пол': 'Мужчина'},
          2: {'Имя': 'Мария', 'Возраст': '22', 'Пол': 'Женщина'}}
для p_id, p_info в people.items():
    print("\nИдентификатор человека:", p_id)
    
    для ключа в p_info:
        печать (клавиша + ':', p_info [ключ]) 

Когда мы запустим вышеуказанную программу, она выведет:

  ID человека: 1
Имя: Джон
Возраст: 27 лет
Пол: мужской
Идентификатор человека: 2
Имя: Мари
Возраст: 22
Пол: Женский  

В приведенной выше программе первый цикл возвращает все ключи во вложенном словаре человек . Он состоит из идентификаторов p_id каждого человека. Мы используем эти идентификаторы для распаковки информации p_info каждого человека.

Второй цикл проходит через информацию о каждом человеке. Затем он возвращает все ключи имя , возраст , пол словаря каждого человека.