Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Python: constant, magic, number

Какие константы стоит выносить из логики и почему?

Вопрос проверяет понимание читаемости, поддержки и управления изменяемыми параметрами в коде.

Короткий ответ

Из логики стоит выносить значения, которые имеют смысловое значение и могут меняться. Это улучшает читаемость и снижает риск ошибок. Константы позволяют избежать “магических чисел” и строк. Также их проще централизованно изменить.

Длинный ответ

Определение

Константы — это именованные значения, которые не должны изменяться в процессе выполнения программы.


Зачем выносить константы

Перед перечислением важно подчеркнуть:
имя константы объясняет почему используется значение, а не только что это за число.


Что стоит выносить

  1. Магические числа (100, 60, 86400)

  2. Строковые коды ("ACTIVE", "FAILED")

  3. Пороги и лимиты

  4. Таймауты и интервалы

  5. Значения по умолчанию


Пример

MAX_RETRIES = 3
TIMEOUT_SECONDS = 5

def fetch_data():
    for _ in range(MAX_RETRIES):
        ...

Где хранить константы

  1. В начале модуля

  2. В отдельном файле constants.py

  3. В конфигурации (если меняются без деплоя)


Частые ошибки

  1. Слишком мелкие константы без смысла

  2. Дублирование одинаковых значений

  3. Смешивание конфигурации и логики


Краткий вывод

Вынесенные константы делают код самодокументируемым и устойчивым к изменениям. Это простая практика с большим эффектом.

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    4

  • Сложность:

    5

Навыки

  • Python

    Python

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

#constant

#magic

#number

Подпишись на Python Developer в телеграм

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.