Курс на Stepik
Обложка курса «Python PROрыв: полный цикл веб-разработки — с нуля до Pro» на Stepik
97 979 ₽

Python PROрыв: полный цикл веб-разработки — с нуля до Pro 5.000

Открыть на
STEPIK.ORG

Знакомство с веб-разработкой на Python от и до. Всё, что нужно знать и уметь веб-разработчику на Python.

Показатель Текущие показатели Рост
Значение 🏆 Рейтинг 3 дн 7 дн 30 дн
Количество учеников на курсе «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Учеников на курсе 72
Сертификаты, выданные на курсе «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Сертификатов выдано 0
Отзывы о курсе «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Отзывов получено 2
Рейтинг курса «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Рейтинг курса 5.000
Уроки в курсе «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Количество уроков 402
Тесты в курсе «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Количество квизов 228
Время прохождения курса «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Время прохождения курса
Стоимость курса «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Стоимость курса 97 979 ₽
Обновления курса «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Обновления курса
Дата публикации курса «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Дата публикации курса
Последнее обновление курса «Python PROрыв: полный цикл веб-разработки — с нуля до Pro»Последнее обновление
Сложность easy

Содержание курса

Разделы в курсе «Python PROрыв: полный цикл веб-разработки — с нуля до Pro» 70 разделов Уроки в курсе «Python PROрыв: полный цикл веб-разработки — с нуля до Pro» 402 урока Тесты в курсе «Python PROрыв: полный цикл веб-разработки — с нуля до Pro» 228 тестов Время прохождения курса «Python PROрыв: полный цикл веб-разработки — с нуля до Pro» 92 ч. Последнее обновление курса «Python PROрыв: полный цикл веб-разработки — с нуля до Pro» обн. 10 августа 2026

Введение

2 урока
1. Знакомство
2. Чат

Групповые встречи

7 уроков
1. Про встречи
2. Встреча №0 - 20 апреля 2025
3. Встреча №1 - 17 мая 2025
4. Встреча №2 - 21 июня 2025
5. Встреча №3 - 20 июля 2025
6. Встреча №4 - 07 сентября 2025
7. Встреча №5 - 12 октября 2025

Блок "Работа на локальном компьютере"

1 урок
1. О блоке "Работа на локальном компьютере"

Терминал

6 уроков
1. Windows CMD
2. PowerShell
3. WSL - Ubuntu на Windows
4. zsh
5. Настройка шрифтов в oh-my-posh
6. Настройка шрифта в терминале PyCharm на Windows

Установка Python

6 уроков
1. Зачем запускать Python локально
2. Установка Scoop на Windows
3. Установка Python на Windows
4. Установка Python на Ubuntu или Debian Linux
5. Установка brew на macOS
6. Установка Python на macOS

REPL

2 урока
1. REPL
2. Нижнее подчеркивание

Установка pipx

4 урока
1. Зачем нужен pipx
2. Установка pipx на Windows
3. Установка pipx на Ubuntu Linux
4. Установка pipx на macOS

Блок "PyCharm"

1 урок
1. О блоке "PyCharm"

Обновление Python

1 урок
1. Обновление Python на Windows через pyenv

Начало работы с PyCharm

5 уроков
1. Где писать код
2. Установка PyCharm на Windows
3. Установка PyCharm на Ubuntu
4. Установка PyCharm на macOS
5. Знакомство с PyCharm и первичная настройка

Плагины

1 урок
1. Ставим тему в PyCharm

Блок "Рабочее окружение"

1 урок
1. О блоке "Рабочее окружение"

Обновление PyCharm

2 урока
1. Обновляем PyCharm
2. Проверяем новый PyCharm и ставим плагины

Виртуальное окружение virtualenv

1 урок
1. Знакомство с virtualenv

Poetry

3 урока
1. Установка Poetry
2. Инициализация проекта и установка зависимостей
3. Запуск скриптов в виртуальном окружении через Poetry

uv

6 уроков
1. Установка uv на *nix
2. Установка uv на Windows
3. uv vs pip и Poetry
4. uv vs virtualenv
5. uv vs pipx
6. uv vs pyenv

Установка и использование инструментов

3 урока
1. Установка black через uv tool на Windows
2. Использование black в терминале
3. Автоформатирование black в PyCharm

Блок "git"

1 урок
1. О блоке "git"

Контроль версий

3 урока
1. Знакомство с git в PyCharm
2. .gitignore
3. git - Быстрый старт на Windows

Удобное управление git

3 урока
1. Знакомство с GitHub Desktop
2. git в VS Code
3. git в PyCharm

Блок "FastAPI приложение коротких ссылок"

1 урок
1. О блоке "FastAPI приложение коротких ссылок"

FastAPI короткие ссылки REST API

18 уроков
1. Старт FastAPI проекта коротких ссылок
2. API представление
3. Параметры пути, схемы, перенаправление, зависимости view
4. Разделение и API Router
5. Получение данных в форме
6. Получение данных в JSON теле
7. Хранение данных в памяти
8. Удаление записи
9. Нужно больше вложенных роутеров
10. Обновление PUT
11. Обновление PATCH
12. Важность схемы ответа
13. Хранение данных. Задание и решение
14. Логирование событий
15. Цикл жизни приложения
16. BackgroundTasks - откладываем действия
17. Зависимости на уровне роутера
18. Проверка метода запроса

FastAPI Auth

7 уроков
1. Auth vs Auth
2. Когда использовать Token Auth
3. Токен в строке запроса
4. Токен в заголовках запроса
5. Единый вход в документации Swagger
6. Basic Auth
7. Выбор метода входа

Знакомство с Docker Desktop

5 уроков
1. Контейнеризация и Docker
2. Установка Docker Desktop на Windows + WSL
3. Установка Docker Desktop на Ubuntu
4. Установка Docker Desktop на macOS
5. Запуск контейнеров в терминале

Знакомство с Redis

3 урока
1. Что такое Redis
2. Запуск Redis и первое знакомство
3. Базы данных в Redis

Хранение данных приложения в Redis

12 уроков
1. Подключение Python приложения к Redis
2. Хранение токенов в Redis
3. Обертка над Redis для работы с токенами
4. Хранение пользователей в Redis
5. Сохранение коротких ссылок в Redis
6. Получение короткой ссылки из Redis
7. Получение коротких ссылок из Redis
8. Обновление короткой ссылки в Redis
9. Удаление короткой ссылки из Redis
10. Уборка. Избавляемся от лишнего кода
11. Проверка наличия короткой ссылки перед записью
12. Реализация в CRUD проверки наличия короткой ссылки

Команды в терминале

5 уроков
1. Свои команды в терминале
2. Команда для проверки токена
3. Команда для отображения токенов
4. Команды для управления токенами
5. Запуск manage скрипта на Windows

Принуждение к типизации

5 уроков
1. Почему нам важно строго соблюдать типы
2. Знакомство с mypy
3. Согласование кода с mypy
4. Строгий mypy
5. mypy и Pydantic

Соблюдение код-стиля

5 уроков
1. Зачем соблюдать код-стиль
2. Знакомство с ruff
3. Автоматическое причесывание импортов
4. Подключение новых правил
5. Принуждение к соблюдению код-стиля

Тестирование на unittest

12 уроков
1. Введение в тестирование
2. Организация файлов тестирования
3. Первый тест на unittest
4. Проверка совместимости схем
5. Группировка идентичных проверок
6. Ожидание исключений
7. Переменные окружения на Windows в разных оболочках
8. Тестовое окружение
9. Проверка работы с хранилищем
10. Другие способы валидации
11. Предварительная настройка до теста и уборка за собой
12. Предварительная настройка до всех тестов и уборка за собой

Проверка покрытия

6 уроков
1. Зачем проверять покрытие
2. Проверка покрытия в PyCharm
3. Знакомство с coverage
4. Отчёты о покрытии
5. Генерация отчётов
6. Настройки coverage

Тестирование на pytest

24 урока
1. Почему нам недостаточно unittest
2. Знакомство с pytest
3. Первый тест на pytest
4. Группа тестов на pytest
5. Принудительное завершение pytest
6. Знакомство с conftest
7. Перенос представления в отдельный модуль
8. Первый API тест FastAPI приложения
9. Параметризация в pytest
10. Ожидание исключений на pytest
11. Фикстуры в pytest
12. Фикстура убирает за собой
13. Общие фикстуры в conftest
14. Вложенные фикстуры, частота создания фикстур, api тесты
15. Параметризация фикстур в pytest
16. Косвенная и частичная параметризация фикстур
17. Автоматическое применение фикстур в pytest
18. Плагин pytest-cov
19. Настройки pytest
20. Метки pytest
21. Ожидаемая ошибка - метка xfail
22. Пропуск теста - skip и skipif
23. Отчёт pytest по результатам - флаги r
24. Фикстура caplog

Знакомство с GitHub Actions

12 уроков
1. Что такое CI
2. Знакомство с GitHub Actions
3. Контекст текущего запуска
4. События и условия для действий
5. Установка Python и запуск black в Github Actions
6. Доступ PyCharm к GitHub для чтения Actions
7. Обновляем и фиксируем версию uv
8. Установка uv зависимостей в GitHub Actions
9. Запуск mypy в GitHub Actions
10. Запуск ruff в GitHub Actions
11. Запуск pre-commit в GitHub Actions
12. Бейджи по результатам CI

Автотесты и проверка покрытия в GitHub Actions

10 уроков
1. Обязательный успех для запуска следующей джобы в GitHub Action
2. Запуск тестов в GitHub Actions
3. Запуск контейнеров в GitHub Actions
4. GitHub CLI
5. Локальный запуск CI через act
6. Секреты в локальном act
7. Интерактивные отчёты о покрытии в GitHub
8. Важность проверки покрытия
9. Кастомный бейдж своими силами
10. Артефакты по результатам CI

Конфигурация приложения

7 уроков
1. Знакомство с pydantic-settings
2. Настройки настроек
3. .env файл
4. Несколько .env файлов
5. Переменные окружения
6. YAML файлы
7. Кэшированный объект настроек

FastAPI шаблоны HTML страниц

8 уроков
1. Главная страница HTML
2. Отображение представления в документации
3. Шаблон главной страницы
4. Базовый шаблон страницы
5. Навигационная панель
6. Стандартный контекст шаблона
7. Страница о проекте
8. Активная ссылка

Наводим порядок перед большой работой

5 уроков
1. Обновление тестов
2. Расположение кода хранилища
3. Организация HTML представлений
4. Хранилище через зависимость
5. Глобальный экземпляр хранилища

Отображение коротких ссылок

4 урока
1. Раздел коротких ссылок
2. Пустой список коротких ссылок
3. Список всех коротких ссылок
4. Переход на целевой сайт

Создание короткой ссылки

9 уроков
1. Представления для создания новой короткой ссылки и Pydantic форм
2. HTML форма создания новой короткой ссылки
3. Макросы в Jinja
4. Кнопки навигации
5. Создание короткой ссылки через форму
6. Обработка ошибки при создании
7. Обработка ошибок валидации формы
8. Аутентификация при создании
9. Проверка кода и исправление ошибок

Обновление короткой ссылки

7 уроков
1. Рефакторинг ответа с формой
2. Рефакторинг HTML формы
3. Переход к редактированию короткой ссылки
4. Страница редактирования короткой ссылки
5. Проброс текущей короткой ссылки
6. Обновление короткой ссылки
7. Обработка ошибок при обновлении

Удаление короткой ссылки

5 уроков
1. Модальное окно
2. Представление для удаления короткой ссылки
3. Форма для удаления короткой ссылки
4. Удаление короткой ссылки из хранилища
5. Внезапный HTMX

Сессия пользователя

3 урока
1. Что такое сессия
2. Starlette SessionMiddleware
3. flash сообщения о создании

Блок "Основы Frontend"

1 урок
1. О блоке "Основы Frontend"

HTML

6 уроков
1. Что такое HTML
2. Первая HTML страница
3. Популярные теги
4. Формы
5. Стандартные поля ввода
6. Правила хорошего тона

CSS

4 урока
1. Знакомство с CSS
2. Стиль элемента
3. Базовые стили элементов страницы
4. Стили и классы

JavaScript

6 уроков
1. Зачем нужен JS
2. Первые строки на JS
3. Взаимодействие с компонентами
4. Обновление части элемента
5. Простая обработка событий
6. Слушатели событий

Готовые наборы CSS - Bootstrap

6 уроков
1. Готовые наборы CSS - зачем нужны и какие бывают
2. Знакомство с Bootstrap
3. Система именования в Bootstrap
4. Подключение Bootstrap CSS
5. Сетка страницы
6. Панель навигации

Сторонний JS

5 уроков
1. Использование стороннего JS
2. Подключение Bootstrap JS
3. Тултипы и поповеры
4. Фильтр на JS
5. Что если нет JS

Публикация статичного сайта

3 урока
1. Выбор хостинга
2. Загрузка в репозиторий
3. Запуск на GitHub Pages

Блок "SQL"

1 урок
1. О блоке "SQL"

Знакомство с SQL

8 уроков
1. Что такое базы данных
2. Что такое SQL
3. SQLite
4. Запросы и сортировка
5. Фильтрация
6. Вставка
7. Обновление
8. Удаление

Проектирование таблицы

8 уроков
1. Описание таблицы товаров
2. Схема таблицы товаров
3. Тип первичного ключа
4. Создание и удаление таблиц
5. Создание таблицы товаров
6. Описание таблицы клиентов
7. Схема таблицы клиентов
8. Создание таблицы клиентов

Запуск Postgres и первое подключение

3 урока
1. Запуск PostgreSQL в Docker
2. Подключение через DBeaver
3. Новая схема

Обновление таблицы

5 уроков
1. Доработка описания таблицы товаров
2. Доработка схемы таблицы товаров
3. Модификация таблицы товаров
4. Доработка описания и схемы таблицы клиентов
5. Модификация таблицы клиентов

Ограничения - Constraints

11 уроков
1. Описание нового ограничения в таблице
2. Ограничение целого числа по значению
3. Описание ограничения даты
4. Ограничение даты
5. Выбор типа строки и почему не нужен VARCHAR
6. Переезд в новую колонку и ограничение текста по длине
7. Описание ограничения текста по значению
8. Ограничение TEXT по значению
9. Колонка статуса клиента
10. IDENTITY vs SERIAL
11. Отказ от SERIAL в пользу IDENTITY

Перечисление ENUM

7 уроков
1. Enum vs CHECK IN
2. Миграция в enum
3. Таблица обращений пользователей
4. Сортировка и фильтрация по приоритету Enum
5. Строгий тип Enum
6. Добавление значений в Enum
7. Изменение опций в Enum

Группировки и агрегатные функции

7 уроков
1. Зачем нужны агрегатные функции
2. Группировки
3. COUNT
4. SUM
5. MAX
6. MIN
7. AVG

RETURNING

5 уроков
1. RETURNING при создании
2. RETURNING при обновлении
3. RETURNING при удалении
4. Бекап базы Postgres и раскатка на новой версии
5. RETURNING OLD AND NEW

Функции в Postgres

12 уроков
1. Простая функция в Postgres
2. Обновление функции
3. Возврат числа
4. Возврат числа
5. Ветвление
6. Новые переменные внутри функций
7. Запросы внутри функции
8. Входные параметры IN
9. Выходные параметры OUT
10. Входные-выходные параметры INOUT
11. UUID версии 7
12. Первичный ключ UUIDv7

Триггеры в Postgres

6 уроков
1. Что такое триггер
2. Триггер создания для автоматических логов событий
3. Триггер обновления для автоматической истории изменений
4. На каждую строку или на каждое выражение
5. Автоматическое поле updated_at
6. Правило для обновления updated_at

Внешний ключ

9 уроков
1. Зачем нужен внешний ключ
2. Схема таблицы картинок товаров
3. Внешний ключ и гарантия целостности
4. Все товары с картинками - INNER JOIN
5. Все-все товары и их картинки - LEFT JOIN
6. Все картинки и их товары - RIGHT JOIN
7. Все товары и все картинки
8. Каскадное удаление
9. ON DELETE SET NULL

Отношение один-к-одному

5 уроков
1. Зачем нужно отношение один к одному
2. Описание таблицы профиля автора
3. Схема таблицы профиля автора
4. Таблица профиля автора
5. Первичный ключ и внешний ключ в таблице 1к1

Отношение многие-ко-многим

6 уроков
1. Что за многие и к каким многим
2. Описание таблиц для связи многие ко многим
3. Схема связи многие ко многим
4. Таблица тегов
5. Таблица тегов статей
6. Связь статей и тегов

Индексы

13 уроков
1. Описание таблицы пользователей
2. Схема таблицы пользователей
3. Серия данных
4. Условия в запросе
5. Таблица пользователей и данные
6. Поиск по тысячам записей и анализ запроса
7. Новый индекс
8. Сбалансированное дерево поиска
9. Неявный индекс - уникальное поле
10. Составной индекс
11. Индекс по выражению
12. Частичный индекс
13. Поиск по тексту на основе триграмм

JSONB

6 уроков
1. JSON и JSONB в Postgres
2. Работа с JSONB в Postgres
3. Сложная фильтрация по JSONB
4. Обновление JSONB поля
5. GIN индекс на JSONB поле
6. Уникальный индекс JSONB поля

16 - Внешний ключ вместо перечисления

3 урока
1. Категории товаров
2. Внешний ключ на категорию
3. Индекс на внешний ключ

THIS IS a new module name

2 урока
1. This is first lesson in the module
2. This is SECOND lesson in the module

Блок "Интеграция Python с базами данных"

1 урок
1. О блоке "Интеграция Python с базами данных"

Python и SQLite

9 уроков
1. Подключение к SQLite в Python
2. Создание таблицы и вставка значений
3. Доступ к данным в строке по имени колонки
4. Параметризованные запросы
5. Параметризованные запросы через словарь
6. Обновление данных
7. Удаление данных
8. Python SQLite CLI
9. SQLite в памяти

Python и Postgres

6 уроков
1. Подключение к Postgres в Python
2. Создание таблицы и вставка записей из Python в Postgres
3. Чтение данных и фабрики строк
4. Обновление и удаление срок в Postgres на Python
5. Форматирование запросов
6. template strings в Python 3.14 и psycopg