__str__ vs __repr__ в Python: конец путанице

« str для людей, а repr для машин» — эту фразу слышали многие, но на практике путаница всё равно остается. Почему функция print() иногда игнорирует ваши настройки? Что такое односторонний фолбэк? И зачем вообще писать оба метода?

https://habr.com/ru/articles/1006790/

#python #python3 #python_для_начинающих #python_3 #python_tutor #python_class #string #repr

__str__ vs __repr__ в Python: конец путанице

1. Концепция: Читаемость vs Однозначность Небольшое отступление: Если вы только начинаете знакомиться с классами, объектами и магическими методами, приглашаю вас на мой бесплатный курс ООП Python:...

Хабр

Как я создала локального AI-ассистента для системного аналитика: от Telegram-бота до полноценного помощника (часть 1)

Привет! Меня зовут Фаина, я системный аналитик с опытом более 5 лет. В последнее время все чаще стала задумываться как системному аналитику в текущих реалиях применять в работе ИИ. Так началось мое погружение в увлекательный мир LangChain, ИИ, RAG и векторные БД. Для начального исследования я решила попробовать что-то достаточно простое и базовое. Так в мою голову пришла идея создать ТГ бота, который напоминает о запланированных делах

https://habr.com/ru/articles/1005874/

#python_3 #langchain #langchain_агенты #telegram_bot #ollama #gemma_3 #ai

Как я создала локального AI-ассистента для системного аналитика: от Telegram-бота до полноценного помощника (часть 1)

Привет! Меня зовут Фаина, я системный аналитик с опытом более 5 лет. В последнее время все чаще стала задумываться как системному аналитику в текущих реалиях применять в работе ИИ. Так началось мое...

Хабр

Изучаем FastAPI за одну статью: от «Hello World» до структурированного API

Если вы пишете бэкенд на Python или только собираетесь вкатиться в эту тему, вы точно слышали про FastAPI. Он обещает скорость NodeJS, автодокументацию из коробки и строгую типизацию. Звучит круто, но для новичка любая новая технология выглядит пугающе. В этом гайде я хочу взять вас за руку и провести по всем базовым концепциям фреймворка. Мы напишем свой первый API-сервис с нуля, разберем частые ошибки новичков с асинхронностью и поймем, как писать чистый код с помощью APIRouter. Спойлер: баз данных и сложных ORM сегодня не будет, сосредоточимся на чистом понимании магии FastAPI.

https://habr.com/ru/articles/1005390/

#fastapi #python #python3 #python_для_начинающих #python_3 #python_tutor #вебразработка

Изучаем FastAPI за одну статью: от «Hello World» до структурированного API

Привет, Хабр! Если вы пишете бэкенд на Python или только собираетесь вкатиться в эту тему, вы наверняка уже слышали про FastAPI. Сейчас его требуют в вакансиях, на нём переписывают...

Хабр

Декораторы в Python для самых маленьких и немного для взрослых

Представьте типичную ситуацию: вы написали отличный кусок кода. У вас есть десяток функций, которые делают полезную работу — например, ходят в стороннее API, парсят данные и аккуратно складывают их в базу. Код читаемый, лаконичный, всё работает как часы. И тут приходит тимлид (или заказчик) и говорит: «Слушай, а давай-ка мы будем замерять время выполнения каждой функции и писать это в логи. Ну, чтобы отлавливать тормоза на проде». Что делает разработчик, который не знает про декораторы?

https://habr.com/ru/articles/1004866/

#декораторы #декораторы_python_для_начинающих #python #python3 #python_для_начинающих #python_3 #python_tutor

Декораторы в Python для самых маленьких и немного для взрослых

Введение. Зачем вообще нужны декораторы? Представьте типичную ситуацию: вы написали отличный кусок кода. У вас есть десяток функций, которые делают полезную работу — например, ходят в стороннее API,...

Хабр

Urich: DDD и CQRS для микросервисов на Starlette без ручной раскладки роутов

Когда строим бэкенд по DDD и CQRS, роуты и OpenAPI обычно собираем вручную. Urich делает иначе: описываешь ограниченный контекст одним объектом — маршруты и документация появляются сами. Обзор фреймворка на Starlette и примеры кода.

https://habr.com/ru/articles/1002994/

#python_3 #starlette #ddd #cqrs #микросервисы

Urich: DDD и CQRS для микросервисов на Starlette без ручной раскладки роутов

Когда хочется строить бэкенд по DDD и CQRS на Python, а не «просто REST», приходится самому раскладывать роуты, команды, запросы и события. Я сделал фреймворк Urich — в нём один объект описывает...

Хабр

ООП в Python за 1 статью: от «Hello World» до архитектуры

Вы освоили переменные, разобрались с циклами и научились писать функции. Ваши скрипты бодро парсят сайты, перекладывают файлы или считают статистику. Жизнь кажется прекрасной, а Python — лучшим языком в мире. Но однажды проект начинает расти. Вместо одного файла у вас их уже десять. Переменные начинают «путешествовать» по коду непредсказуемым образом, функции принимают по 8 аргументов, а попытка исправить один баг рождает два новых в совершенно неожиданном месте. Вы смотрите на свой код и понимаете: это не архитектура, это тарелка со спагетти, в которой запутался даже сам повар.

https://habr.com/ru/articles/1000378/

#python #python3 #python_для_начинающих #python_3 #python_class #python_tutor #python_oop #пайтон #пайтон_для_детей #пайтон_ооп

ООП в Python за 1 статью: от «Hello World» до архитектуры

Введение Вы уже освоили переменные, циклы и функции. Ваши скрипты бодро парсят сайты и перекладывают файлы. Но однажды проект начинает расти. Вместо одного файла — десять. Переменные «путешествуют» по...

Хабр

Рекурсия в Python: от матрешки до стека вызовов. Полный гид для новичков

Рекурсия часто кажется новичкам «высшим пилотажем» или магией. На деле это фундаментальный инструмент, который незаменим при работе с деревьями и сложными структурами данных. В этой статье мы разберем анатомию рекурсии, заглянем «под капот» стека вызовов, выясним, почему Гвидо ван Россум не любит хвостовую оптимизацию, и научимся ускорять вычисления в тысячи раз с помощью мемоизации.

https://habr.com/ru/articles/991714/

#рекурсия #python #python3 #python_для_начинающих #python_3 #python_tutor

Рекурсия в Python: от матрешки до стека вызовов. Полный гид для новичков

Рекурсия. Введение. Многие новички воспринимают рекурсию как некий «высший пилотаж» или магию, доступную только после прочтения томов по Computer Science. На деле это просто один из способов...

Хабр

Мемоизация в Python: как заставить код помнить

Проблема многих программ не в медленном процессоре, а в том, что они «забывчивы». Каждый раз, когда вы вызываете функцию с одними и теми же данными, она честно считает всё с нуля. Если внутри сложные расчеты или рекурсия — всё начинает тормозить. Решение — Мемоизация. Это техника, при которой функция запоминает результат своих вычислений. Если вы вызываете её снова с теми же аргументами, она не считает, а просто достает готовый ответ из памяти (словаря).

https://habr.com/ru/articles/989936/

#python #python3 #python_для_начинающих #python_3 #python_tutor #python_class #lru_cache

Мемоизация в Python: как заставить код помнить

Вступление: Проблема «забывчивого» компьютера Проблема большинства программ не в том, что процессор медленно считает, а в том, что он делает одну и ту же работу тысячи раз подряд. По умолчанию...

Хабр

Основы Python за 1 статью: от Hello World до рабочего скрипта

Python за одну статью? Да, если выкинуть оттуда ООП. Новичков часто пугают сложной теорией, хотя для старта нужно всего 9 блоков знаний. Разбираем только то, что реально нужно для написания скриптов: синтаксис, структуры данных, функции и работу с файлами. В конце — пишем полноценную консольную игру. Лучший старт для новичка и шпаргалка для забывчивых.

https://habr.com/ru/articles/988966/

#python #python3 #python_для_начинающих #python_3 #python_tutor

Основы Python за 1 статью: от Hello World до рабочего скрипта

Введение Python часто называют языком с самым низким порогом входа. И это правда: он читается как псевдокод, прощает отсутствие точных типов и позволяет выражать мысли лаконично. Однако многие...

Хабр

Python вместо After Effects: пишем видео на Manim

Зачем двигать ползунки мышкой, если вы знаете Python? В статье разбираем Manim — библиотеку, с помощью которой создаются видео на канале 3Blue1Brown. Установка, отличие версий, рендеринг LaTeX-формул и код для вашей первой процедурной анимации. Превращаем скрипты в MP4 без единого кейфрейма.

https://habr.com/ru/articles/986048/

#python #manim #python3 #python_для_начинающих #LaTeX #python_3 #3blue1brown #Математика

Python вместо After Effects: пишем видео на Manim

1. Введение: Зачем вообще кодить видео? Если вы хоть раз видели ролики на YouTube-канале 3Blue1Brown , вы знаете этот стиль: плавные трансформации фигур, «живые» формулы и графики, которые строятся...

Хабр