Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг
07 Июл 2023
2 мин
3401

Поиск в списке словарей на Python

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

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

Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.

Пример задачи

Представим, что у нас есть следующий список словарей:

[
  {"name": "Tom", "age": 10},
  {"name": "Mark", "age": 5},
  {"name": "Pam", "age": 7}
]

В этом примере каждый словарь представляет собой набор информации о человеке, включая его имя и возраст. Задача заключается в том, чтобы найти словарь, в котором ключ «name» имеет значение «Pam».

Решение

Самый простой и прямолинейный способ решить эту задачу — использовать цикл for для перебора всех словарей в списке и оператор if для проверки значения ключа «name».

Вот как это выглядит на Python:

data = [
  {"name": "Tom", "age": 10},
  {"name": "Mark", "age": 5},
  {"name": "Pam", "age": 7}
]

for person in data:
    if person['name'] == 'Pam':
        print(person)

В этом коде person — это временная переменная, которая на каждой итерации цикла получает следующий словарь из списка data. Затем оператор if проверяет, равно ли значение ключа ‘name’ в этом словаре ‘Pam’. Если это условие выполняется, то словарь выводится на экран.

В результате выполнения этого кода на экран будет выведен следующий словарь:

{"name": "Pam", "age": 7}

Это простой и эффективный способ поиска в списке словарей. Однако стоит помнить, что он будет работать корректно только в том случае, если гарантировано, что каждый словарь в списке содержит ключ, по которому выполняется поиск. Если этого не гарантировано, то перед проверкой значения следует использовать метод get(), который позволяет избежать ошибки, когда ключ отсутствует в словаре.

На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.

Тест на профориентацию
За 10 минут узнайте, как ваш опыт пригодиться в IT индустрии
Подробнее
Тест на профориентацию

Добавить комментарий