Типичные улучшения

Для поиска по тегу начните название тега с символа '@'.

Улучшения, показаны 25 из 75.

Используйте Image.thumbnail эффективно

Метод `Image.thumbnail` достаточно умён и может сам определять бо́льшую сторону и рассчитывать новые размеры с …

Используйте defaultdict

Python отличается от других языков своей богатой стандартной библиотекой. Она хорошо продумана, отлично реализована и …

Используйте настройки argparse

Библиотека argparse предоставляет богатый набор настроек на разные случаи жизни. Сверьтесь с официальной документацией, там …

Используйте стандартное поле id / pk

К списку полей каждой модели данных Django автоматически добавляет поле `id`. Оно есть у всех …

Избавьтесь от условий if при логировании

Вот так делать не надо: ```python if logging_enabled: logging.info(f"Data loaded!") ``` Все эти `if` сильно …

Замените HTML теги на разметку Markdown

Разметку Markdown любят за её выразительность и простоту. В сравнении с HTML здесь не надо …

Спрячьте пустой default в текстовых полях

Обычно Django кладёт `None` во все незаполненные поля модели данных. Пустой `IntegerField` — это `None`, …

Замените список на абзацы текста

В тексте и список, и абзацы решают одну задачу - задают структуру текста, разбивая его …

Протестируйте программу на неполном словаре

Метод словаря `get(key)` отличается от обычного индекса `[key]` реакцией на отсутствующий ключ. Вместо исключения `KeyError` …

Используйте livereload cli

Библиотека livereload предоставляет два интерфейса. Есть обычная библиотека, её можно импортировать и вызвать одну из …

Уберите лишние контейнеры

Чем больше в вёрстке кода, тем сложнее разобраться. Чем труднее разбираться, тем меньше желания читать. …

Откажитесь от unicode-строк

Во второй версии Python была поддержка unicode, но её каждый раз надо было включать символом …

Избавьтесь от my_...

Если эта переменная "ваша", то кто создавал остальные? :) Из-за этого префикса `my_` весь проект …

Используйте split из модуля os.path

Функция `os.path.split` возвращает имя файла и путь до него. Она уже есть в стандартной библиотеке, …

Настройте range

Стандартный `range` можно настроить так, чтобы он начинал счет не с нуля, а с единицы …

Приберитесь за собой

Не стоит оставлять на сервере временные файлы. Со временем их будет становиться все больше, возникнет …

Высушите related_name

В Django код запросов к БД имеет свойство распухать до неприличных размеров. И чем длиннее …

Упакуйте настройки доступа к БД в один URL

Если вы считываете настройки доступа к БД из переменных окружения, то выглядеть такой код может …

Высушите название поля

В Django код запросов к БД имеет свойство распухать до неприличных размеров. И чем длиннее …

Избавьтесь от сравнений с пустым списком/словарем

В Python не принято сравнивать с пустым списком/словарём. В языке достаточно инструментов, чтобы записать ту …

Избавьтесь от устаревшего способа форматирования строк

`%s` -- это старый способ форматирования строк, наследованный ещё из второго питона. Он остаётся для …

Избавьтесь от лишних аргументов

Аргументы -- это настройки для функций. Но от настройки нет никакого толку, если менять её …

Высушите конфиг Nginx

Чем больше в конфиге кода, тем сложнее в нём разобраться. Чем труднее разбираться, тем меньше …

Избавьтесь от data в названиях

Невероятно, но факт. Данные хранятся почти в каждой переменной любой программы написанной за последние полвека! …

deprecated
Переместите картинки из репозитория в GitHub Issues

Очень часто для наглядности хочется показать в README изображения (скриншоты или gif) и возникает вопрос: …

deprecated