Москва

ruru

Вверх

Что нужно знать о словарях в Python
7388
26.10.2023
Что нужно знать о словарях в Python
В этой увлекательной статье, мы погрузимся в мир словарей Python и расскажем вам обо всем, что вам нужно знать: от основ до продвинутых приемов.
26
окт
26.10.2023

Что нужно знать о словарях в Python

В мире языка программирования Python, который считается одним из самых дружелюбных для новичков, существуют ключевые структуры данных, которые лежат в основе обработки информации. Сегодня приглашаем вас в увлекательный мир "словарей".

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


Содержание ▼      

Что такое словари




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

Ключ и значение разделяются двоеточием, пары ключ-значения отделяются запятыми, а словарь целиком ограничивается фигурными скобками {}.

Если простыми словами это что-то вроде телефонной книги, где под каждым номером скрывается какой-то человек.




Только на языке разработчиков номера называют ключами, а людей, которым они принадлежат, — значениями.


Для каких целей нам будут полезны словари




  • Подсчет каких-то предметов, где ключи – названия предметов, а объект – их количество.
  • Для экономии памяти, если есть массив, который использует не все индексы по порядку.
  • Установка соответствий между объектами, сортировка.
  • Хранение данных разных объектов (например: ключ – ID пользователя ВКонтакте, а объект – массив с данными).

Ключом может быть произвольный неизменяемый тип данных: различные числа, строки, кортежи. Ключом в словаре не может быть множество, но может быть  неизменяемый элемент типа frozenset. 

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


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




Создание словаря в Python оформляются фигурными скобками. Внутри них находятся пары «ключ — значение». Первым пишется ключ, а затем, через двоеточие, — значение.

Сами пары отделяются друг от друга запятыми.


dict = {
           'Fortnite' : 'Epic Games',
           'Grand Theft Auto V' : 'Rockstar Games'
          }


По идее, можно вообще не указывать для ключей никаких значений: язык автоматически подставит вместо них значения None. Но словарь при этом всё равно будет работать.


dict = {
          'Fortnite',
          'Grand Theft Auto V'
          }


Выведем на экран элементы словаря с помощью функции print:


print(dict)
          {'Fortnite', 'Grand Theft Auto V'}


Показались только ключи. Теперь попробуем вывести полноценный словарь со значениями:


dict = {
          'Fortnite' : 'Epic Games',
          'Grand Theft Auto V' : 'Rockstar Games'
          }
print(dict)
          {'Fortnite' : 'Epic Games', 'Grand Theft Auto V' : 'Rockstar Games'}


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




Словари в Python имеют множество различных полезных методов, которые помогут вам в работе с ними. Вот лишь некоторые из них:

copy() – создание копии словаря


dict1 = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
dict2 = dict1.copy()
print(dict2) #Выведет {'car' : 'машина', 'apple' : 'яблоко', 'orange' : 'апельсин'}


get() – получение значения по ключу


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
print(dict.get('car')) #Выведет 'машина'


clear() – очистка словаря


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
dict.clear()
print(dict) #Выведет {}


keys() – получение всех ключей словаря


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
print(dict.keys()) #Выведет dict_keys(['car', 'apple', 'orange'])


values() – получение всех значений элементов словаря


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
print(dict.values()) #Выведет dict_values(['машина', 'яблоко', 'апельсин'])


items() – получение всех элементов словаря, включая ключи


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
print(dict.items()) #Выведет dict_items([('car', 'машина'), ('apple', 'яблоко'), ('orange', 'апельсин')])


pop() – удаляет и возвращает значение ключа


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
print(dict.pop('car')) #Выведет 'машина'
print(dict) #Выведет {'apple' : 'яблоко', 'orange' : 'апельсин'}


popitem() – удаляет и возвращает имя и значение ключа


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
print(dict.pop()) #Выведет ('orange', 'апельсин')
print(dict) #Выведет {'car' : 'машина', 'apple' : 'яблоко'}


setdefault() – получение значения по ключу, если такой ключ присутствует в словаре. Когда такого ключа нет, он создается со значением None (если оно не указано в свойствах). Рассмотрим на примере:


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
print(dict.setdefault('car') #Выведет 'машина'
print(dict.setdefault('home', 'дом') #Выведет 'дом'
print(dict) #Выведет {'car' : 'машина', 'apple' : 'яблоко', 'orange' : 'апельсин', 'home' : 'дом'}


update({}) – обновить значения по ключам, добавление новых ключей:


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
dict.update({'car' : 'автомобиль', 'home' : 'дом'})
print(dict) #Выведет {'car' : 'автомобиль', 'apple' : 'яблоко', 'orange' : 'апельсин', 'home' : 'дом'}


Лучше не заучивать голую теорию, а сразу отрабатывать знания на практике. Начать можно, например, с бесплатных упражнений на stepik.org А чтобы быстро находить нужный метод и не ходить каждый раз в гугл, можете уже полноценно начать обучаться в школе программирования CODDY. Наставники помогут вам разобрать все ваши ошибки, и разложат все ваши знания по полкам.


Работа со словарями




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

Добавим в наш словарь объект. Для этого нам нужно придумать значение ключу. Рассмотрим на примере:


dict = {
          'car' : 'машина',
          'apple' : 'яблоко'
          }
dict['orange'] = 'апельсин' #В квадратных скобках указываем имя ключа, а значение после знака равно
print(dict) #Выведет {'car' : 'машина', 'apple' : 'яблоко', 'orange' : 'апельсин'}


Для удаления ключа и его объекта в словаре используют метод del, указывая имя ключа в квадратных скобках:


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
del dict['orange']
print(dict) #Выведет {'car' : 'машина', 'apple' : 'яблоко'}


Перебор элементов словарей в Python

Для вывода всех ключей и значений по порядку используем цикл с оператором in:


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
for key in dict:
print(key, dict[key])
#Выведет:
#car машина
#apple яблоко
#orange апельсин


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


dict = {
          'car' : 'машина',
          'apple' : 'яблоко',
          'orange' : 'апельсин'
          }
print(dict['car']) #Выведет 'машина'


Словари в Python - это мощное оружие, которое поможет вам в решении разнообразных задач. Не бойтесь экспериментировать, создавать и применять словари в своих проектах. Помните, что знание этой структуры данных делает вас настоящим магом в мире Python.


Давайте исследовать и воплощать магию с помощью словарей!

Почитайте нас еще!
24.04.2025
EdTech в CODDY: какие образовательные технологии мы используем
Невозможно обучать детей IT-технологиям без использования этих самых технологий. Рассказываем, какие инновационные методики мы применяем.
22.04.2025
Minecraft — революция в обучении и развитии детей
О Minecraft слышали практически все. Однако знаете ли вы, что любимая игра вашего ребенка может стать отличной площадкой для обучения новым навыкам? Рассказываем, как Minecraft стал главным амбассадором геймификации образования.
15.04.2025
Трехшаговый процесс поиска правды в интернете
Помогаем отличить правду от лжи в интернете. Рассказываем про фактчекинг и поиск первоисточников, объясняем важность изучения противоположных мнений и т.д.
10.04.2025
В потоке: как в CODDY удерживают концентрацию внимания у детей
Концентрация внимания во время занятий – ключевой фактор успеха в образовании. Рассказываем, какие подходы мы используем, чтобы наши уроки были интересны даже для самых маленьких.
Комментарии
Комментариев нет
Оставьте свой комментарий
Ваш комментарий принят и появится после прохождения модерации!
Исчерпан лимит на отправку комментариев
Площадки
Бонусы от друзей !
Подпишитесь на новости и получите бонусы от наших партнеров

Спасибо!
Заявка успешно отправлена!
Возникла ошибка. Сообщите, пожалуйста, администратору.
Вы отправили много заявок. Попробуйте позже
Ваше имя и фамилия *
Обязательно
Имя ребенка*
Обязательно
Возраст ребенка*
лет
Обязательно
E-mail*
Введен не верный e-mail
Ваш город
Обязательно
Запишите ребенка
на бесплатный урок!
Спасибо!
Заявка успешно отправлена!
Возникла ошибка. Сообщите, пожалуйста, администратору.
Вы отправили много заявок. Попробуйте позже
Обязательно
Введен не верный e-mail
+1
Обязательно
Промокод не применен
Промокод применен
Пробное занятие
Спасибо!
Заявка успешно отправлена!
Возникла ошибка. Сообщите, пожалуйста, администратору.
Вы отправили много заявок. Попробуйте позже
Ваше имя и фамилия
Обязательно
Ваш e-mail
Введен не верный e-mail
Ваш телефон
+1
Обязательно
Промокод
Промокод не применен
Промокод применен
Связаться с нами
Спасибо!
Заявка успешно отправлена!
Возникла ошибка. Сообщите, пожалуйста, администратору.
Вы отправили много заявок. Попробуйте позже
Обнаружены недопустимые символы в сообщении. Уберите все лишнее, оставьте только текст.
Ваше имя и фамилия
Обязательно
Ваш город
Обязательно
Ваш e-mail
Введен не верный e-mail
Сообщение
Обязательно
Предварительная запись
Спасибо!
Заявка успешно отправлена!
Возникла ошибка. Сообщите, пожалуйста, администратору.
Вы отправили много заявок. Попробуйте позже
Ваше имя и фамилия
Обязательно
Имя ребенка
Обязательно
Ваш город
Обязательно
Ваш телефон
Обязательно
Ваш e-mail
Введен не верный e-mail
Начало обучения
Май 2025
Июнь 2025
Июль 2025
Заказать звонок
Администратор свяжется с
вами в ближайшее время.
Что-то пошло не так, попробуйте отправить заявку позже.
Вы отправили много заявок. Попробуйте позже
Ваше имя и фамилия
Обязательно
Ваш телефон
+1
Обязательно
Оставить заявку
Администратор свяжется с
вами в ближайшее время.
Что-то пошло не так, попробуйте отправить заявку позже.
Вы отправили много заявок. Попробуйте позже
Ваше имя и фамилия
Обязательно
Ваш телефон
Обязательно
Оплатить курсы
Заявка подана, менеджер свяжется с вами в ближайшее время!
Получите бонус от наших партнеров.
Возникла ошибка. Сообщите, пожалуйста, администратору.
Вы отправили много заявок. Попробуйте позже
Имя и фамилия ребенка
Обязательно
Ваш телефон
Обязательно
Ваш e-mail
Введен не верный e-mail
Сумма для оплаты
Введите целое число
Оставить отзыв
Благодарим вас за отзыв.
Что-то пошло не так, попробуйте отправить заявку позже.
Вы отправили много заявок. Попробуйте позже
Ваше имя и фамилия
Обязательно
Ваш e-mail
Введен не верный e-mail
Ваше фото
Оцените школу
Оцените преподавателя
Отзыв
Обязательно
Спасибо!
Заявка успешно отправлена!
Close
По записи и другим вопросам звоните по номеру телефона +7 (495) 106-60-11 или пишите на email info@coddyschool.com
Close
Close
Выберите языкChoose a languageТілді таңдаңызВиберіть мовуSélectionnez la langueSprache wählen
Choose a language
RU
EN
KZ
UA
FR
DE
OK
Предварительный просмотр
Заберите индивидуальный план развития ребенка
Заберите индивидуальный
план развития ребенка