Для решения заданий необходимо повторить: свойства, стандартные операции со словарями, как их создавать, каковы требования к ключам и значениям, как копировать, обновлять, распаковывать, какими способами можно просматривать содержимое. Рассмотрим особенности словарей в Python, операции над ними; дополнительные структуры данных, образованные от них; темы, необходимые для решения заданий. Если данному методу передается аргумент value , то каждому элементу присваивается так и значение указанное в параметре value.
Методы словарей
В таблице ниже указаны доступные методы словарей. Некоторые из них мы уже использовали в примерах выше.
Возвращает словарь с ключами из seq и значениями, равными v (по умолчанию None )
Возвращает значение ключа key . Если key не существует, возвращает d (по умолчанию None )
Возвращает новый объект элементов словаря в формате (ключ, значение)
Удаляет элемент с ключом key и возвращает его значение или d , если key не найден. Если d не было обозначено и key не найден, вызывает ошибку KeyError.
Удаляет и возвращает произвольную пару (ключ, значение) . Вызывае ошибку KeyError, если словарь пустой.
Если ключ key есть в словаре, возвращает соответствующее ему значение. Если нет, добавляет в словарь элемент с ключом key и значением d и возвращает d (по умолчанию None )
Обновляет словарь имеющимися парами ключ/значение из other , перезаписывая существующие ключи
11 способов как объединить два словаря в Python — подробно с примерами
2. В Python ключ не может быть изменяемым объектом. Мы можем использовать числа, строки или кортежи в качестве ключа, но мы не можем использовать какой-либо изменяемый объект, такой как список, в качестве ключа в словаре. Когда словарь d1 выполняется, он печатает значения Washington и Elizabeth для ключей Actress и Basketball вместо Jasmine Wiley и Jordan. Конструктор dict копирует первые элементы словаря в новый словарь, а затем выполняет метод update , чтобы обновить новый словарь вторым элементом словаря.
Методы словаря
Метод clear() удаляет все элементы словаря, но не удаляет сам словарь. В итоге остается пустой словарь:
Словарь – это изменяемый тип данных. Следовательно, как и список он передается в функцию по ссылке. Поэтому иногда, чтобы избежать нежелательного изменения глобального словаря его копируют. Это делают и с другими целями.
Метод fromkeys() позволяет создать словарь из списка, элементы которого становятся ключами. Применять метод можно как классу dict , так и к его объектам:
Метод pop() удаляет из словаря элемент по указанному ключу и возвращает значение удаленной пары. Метод popitem() не принимает аргумента, удаляет элемент по принципу «последним вошел, первым вышел» и возвращает его в программу в виде кортежа (ключ, значение) .
С помощью setdefault() можно добавить элемент в словарь:
Равносильно nums[4] = ‘four’ , если элемент с ключом 4 отсутствует в словаре. Если он уже есть, то nums[4] = ‘four’ перезапишет старое значение, setdefault() – нет.
С помощью update() можно добавить в словарь другой словарь:
Также метод обновляет значения существующих ключей. Включает еще ряд особенностей.
Python SQLite: что такое СУБД и реляционные БД
Практическая работа
Создайте словарь, связав его с переменной school , и наполните данными, которые бы отражали количество учащихся в разных классах (1а, 1б, 2б, 6а, 7в и т. п.). Внесите изменения в словарь согласно следующему: а) в одном из классов изменилось количество учащихся, б) в школе появился новый класс, с) в школе был расформирован (удален) другой класс. Вычислите общее количество учащихся в школе.
Напишите функцию, которая принимает один словарь, и возвращает другой, в котором ключами являются значения из первого словаря, а значениями – соответствующие им ключи. Создайте словарь, передайте его в функцию. Выведите на экран исходный и «перевернутый» словари.
Примеры решения и дополнительные уроки в android-приложении и pdf-версии курса
Как вы увидели выше, мы можем создать словарь с помощью встроенной функции dict() . Ключи же повторяться не могут и должны быть неизменяемым типом строками, числовыми типами и кортежами с неизменяемыми элементами. Словарь можно создать, используя несколько пар ключ-значение, заключенных в фигурные скобки , и каждый ключ отделяется от своего значения двоеточием.
Dict fromkeys
Метод fromkeys() — предназначен для генерации нового словаря. Новый словарь генерируется из заданной последовательности элементов, и значениями предоставленными пользователем.
Метод fromkeys() принимает два параметра:
Итак метод fromkeys() возвращает новый сгенерированный словарь, где ключами являются заранее заданные последовательности элементов.
Если данному методу передается аргумент value , то каждому элементу присваивается так и значение указанное в параметре value .
Пример 1. Создаем словарь из последовательных элементов
Пример 2. Создаем словарь с ключом и со значением
Пример 3. Создаем словарь из списка
Методы словаря Python — Документация по языку программирования Python
- Оператор присваивания «=» — создает новую ссылку, которая полностью ссылается на оригинал, в случае если оригинал будет изменен, копия так же изменится.
- Метод copy() — создает полностью новый словарь, и копирует туда все элементы с оригинала, таким образом у нас появляется полностью идентичный оригиналу словарь, который не реагирует на изменение в оригинальном словаре
Ключом может быть любой неизменяемый тип данных. Значением – любой тип данных. Значения словарей вполне могут быть структурами, например, другими словарями или списками. Если передать второй параметр, то при попытке удаления несуществующего ключа будет получен этот параметр в качестве результата выполнения. Итак метод fromkeys возвращает новый сгенерированный словарь, где ключами являются заранее заданные последовательности элементов.
Видео по теме
Python SQLite #2: подключение к БД, создание и удаление таблиц
Python SQLite #3: команды SELECT и INSERT при работе с таблицами БД
Python SQLite #4: команды UPDATE и DELETE при работе с таблицами
Python SQLite #5: агрегирование и группировка GROUP BY
Python SQLite #6: оператор JOIN для формирования сводного отчета
Python SQLite #7: оператор UNION объединения нескольких таблиц
© 2024 Частичное или полное копирование информации с данного сайта для распространения на других ресурсах, в том числе и бумажных, строго запрещено. Все тексты и изображения являются собственностью сайта
Словарь Python: создание, добавление и удаление элементов, встроенные методы, ключи и значения на примерах
- id (тип integer) – уникальный идентификатор записи (строки);
- sex (integer) – пол игрока (1 – женский; 2 – мужской);
- name (text) – имя игрока;
- level (integer) – уровень игрока;
- score (integer) – максимальное число очков, заработанных игроком.
Содержание статьи
- 1 Методы словарей
- 2 11 способов как объединить два словаря в Python — подробно с примерами
- 3 Методы словаря
- 4 Python SQLite: что такое СУБД и реляционные БД
- 5 Практическая работа
- 6 Dict fromkeys
- 7 Методы словаря Python — Документация по языку программирования Python
- 8 Словарь Python: создание, добавление и удаление элементов, встроенные методы, ключи и значения на примерах