← Назад к вопросам

Что такое словарь в Python?

1.0 Junior🔥 181 комментариев
#Python

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI29 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Словарь в Python

Словарь (Dictionary) — это встроенный тип данных в Python, который хранит неупорядоченную коллекцию пар ключ-значение. Это один из самых важных и часто используемых типов данных в языке.

Основные характеристики

Определение и создание:

# Пустой словарь
my_dict = {}
my_dict = dict()

# Словарь с данными
student = {
    "name": "Иван",
    "age": 25,
    "gpa": 4.5,
    "courses": ["Python", "ML", "SQL"]
}

# Словарь из списка кортежей
dict_from_list = dict([("a", 1), ("b", 2), ("c", 3)])

# С помощью dict comprehension
squares = {x: x**2 for x in range(5)}

Ключевые свойства

  • Изменяемость (Mutable): можно добавлять, удалять и изменять элементы
  • Неупорядоченность (для Python < 3.7): в Python 3.7+ словари сохраняют порядок вставки
  • Уникальные ключи: каждый ключ может встречаться только один раз
  • Хеширование ключей: ключи должны быть неизменяемыми типами (int, str, tuple)

Операции со словарями

Доступ к элементам:

student = {"name": "Иван", "age": 25}

# Прямой доступ
print(student["name"])

# Метод get() - безопаснее
print(student.get("name"))
print(student.get("email", "не указан"))

Добавление и изменение:

student["email"] = "ivan@example.com"
student["age"] = 26

Удаление элементов:

del student["email"]
student.pop("age")
student.clear()

Полезные методы

data = {"a": 1, "b": 2, "c": 3}

# Получить ключи и значения
data.keys()
data.values()
data.items()

# Итерация
for key, value in data.items():
    print(key, value)

# Обновление
data.update({"d": 4})

# Проверка наличия ключа
if "a" in data:
    print("Ключ существует")

Вложенные словари

company = {
    "employees": [
        {"name": "Иван", "salary": 100000}
    ],
    "headquarters": {
        "city": "Москва",
        "address": "ул. Пушкина, 1"
    }
}

print(company["employees"][0]["name"])
print(company["headquarters"]["city"])

Практическое применение в Data Science

import json

# Гиперпараметры модели
hyperparams = {
    "learning_rate": 0.001,
    "batch_size": 32,
    "epochs": 100,
    "optimizer": "adam"
}

# Кэширование результатов
cache = {}

def compute_metric(data_hash):
    if data_hash in cache:
        return cache[data_hash]
    result = expensive_computation()
    cache[data_hash] = result
    return result

Почему словари важны?

Словари используются для:

  • Хранения структурированных данных (конфиги, метаданные)
  • Быстрого поиска по ключам (O(1) в среднем)
  • Работы с JSON (естественное представление в Python)
  • Кэширования результатов вычислений
  • Счётчиков частоты элементов

Это фундаментальный инструмент в программировании и Data Science.