Pytex — Школа Python разработки
871 subscribers
50 photos
1 video
22 links
Онлайн-школа Python разработки Pytex
https://pytex.school
Download Telegram
Пояснение ко вчерашней задаче

Pydantic автоматически объединяет валидаторы из всех уровней вложенности Annotated в один линейный список, который выполняется последовательно. К полю val валидаторы применяются в следующем порядке:

* BeforeValidator(multiply) - запускается перед проверкой типа Pydantic, на этом этапе val всё ещё тот, что передан при создании модели. После BeforeValidator Pydantic пытается привести значение к типу, указанному в аннотации.
* AfterValidator(to_int) - запускается после приведения типа, указанного в аннотации.
* AfterValidator(is_less_than_100) - запускается после AfterValidator с учетом вложенности.

Итоговая цепочка событий:

При входящем значении val='5' BeforeValidator(multiply)отдает строку '5' * 3 = '555', далее AfterValidator(to_int) переводит '555' в int, и в финале валидатор AfterValidator(is_less_than_100) отсекает полученное число 555, так как оно больше 100.
3👍3
Опыт backend разработчика измеряется не только строками кода.

Кажется, у каждого бэкенд-разработчика есть свой набор «рабочих приключений», отражающий его путь.

Проверим по бинго?

Ставь 🔥, если собрал больше трёх пунктов
Please open Telegram to view this post
VIEW IN TELEGRAM
126👍3
Наш 2025 год

Самое приятное в подведении итогов года – это осознавать, как далеко мы продвинулись и изменились по сравнению с прошлым. Рассказываем, как прошёл этот год в Pytex ⬆️

Спасибо, что был с нами в этом году! Мы очень стараемся давать как можно больше пользы для разработчиков, поэтому нам приятно получать твою поддержку и благодарность 💚
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥44🥰11
С наступающим 2026, разработчики!

from fastapi import FastAPI

app = FastAPI()

@app.get("/new-year")
def happy_new_year(year: int = 2026):
    wishes = [
        "Молниеносных откликов < 50 мс",
        "Отсутствия 500-ок в проде",
        "Безболезненных деплоев",
        "Стабильных воркеров и очередей",
        "Понятных логов и чистых трассировок",
        "Зелёных тестов и добрых ревью"
    ]
    return {
        "message": f"С Новым годом, друзья! В {year} желаем:",
        "wishes": wishes,
        "status": "success"
    }

happy_new_year()


И пусть в вашем проекте под названием "2026":
🍊 не будет зависаний и дедлоков,
🍊 все роуты будут честно отдавать 200 OK,
🍊 а жизнь стабильно проходила через async def, без блокировок и перегрузов.

Увидимся в новом году!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1475
Как выбрать идею для pet-проекта

Одна из самых частых проблем у начинающих и junior-разработчиков заключается в выборе темы для pet-проекта.

Мы собрали несколько рабочих подходов, которые помогают выбрать идею, которую не захочется бросить через неделю ⬆️

Полезные ссылки из карточек:
GitHub Trending

Сабреддит r/SideProject/
Сабреддит r/Entrepreneur/
Пет-проекты Солвит
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍743
🔥 Проверим, как хорошо ты понимаешь асинхронность?

Внимательно прочитай описания понятий и отметь, в каких пунктах допущены ошибки:

1️⃣ Async / Await — механизм для параллельного выполнения кода в нескольких потоках
2️⃣ Event Loop — компонент, который управляет выполнением асинхронных задач и очередей
3️⃣ Future / Task — объект, который всегда содержит готовый результат выполнения корутины
4️⃣ Non-blocking I/O — операции, которые не блокируют event loop во время ожидания результата
5️⃣ Concurrency — одновременное выполнение задач строго на разных ядрах процессора
6️⃣ Callback — функция, которая вызывается после завершения асинхронной операции
7️⃣ Deadlock — ситуация, при которой корутины взаимно ждут ресурсы и не могут продолжить выполнение
8️⃣ Async-framework — фреймворк, который автоматически ускоряет любую бизнес-логику

Пиши свои варианты в комментариях 👇🏻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍322
Асинхронность

Разбираем харды, которые спрашивают на собеседованиях. Сегодня рассмотрим тему, в которой многие путаются.

Что разберём в карточках:
1️⃣ Что такое асинхронность и зачем она нужна
2️⃣ Асинхронность vs многопоточность
3️⃣ Event Loop: как выполняется async-код
4️⃣ Блокирующие и неблокирующие операции
5️⃣ Типичные ошибки
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
14👍4🤝3
В чем разница аутентификации через сессии и JWT токены [Видео]

Как выстроить понятную и надёжную систему работы с пользователями, разобрал senior разработчик Артём Шумейко в этом видео.

Смотрите и узнаете:

1️⃣ где используется аутентификация и как выглядит полный жизненный цикл пользователя
2️⃣ в чём разница между авторизацией и аутентификацией
3️⃣ какие существуют способы аутентификации и в чём их особенности
4️⃣ как работает session-based подход
5️⃣ как работает token-based подход (JWT)
6️⃣ в каких случаях стоит использовать сессии, а в каких JWT токены

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

Видео будет полезно backend-разработчикам и всем, кто хочет глубже разобраться в теме безопасности веб-приложений⬇️

Смотреть видео на YouTube | VK | Rutube
Please open Telegram to view this post
VIEW IN TELEGRAM
13🔥6👎2💯2