20070
Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL
Логики, которые помогли создать программирование @2dn8r58
Возможно, аксиомы на картинке покажутся очевидными, однако именно они составляют метод Лейбница и являются основой для логических типов в Python (да и других языках тоже).x = 10y = x # y теперь ссылается на тот же объект, что и xprint(y == 10) # True, y можно заменить на x
#факт
@zen_of_python
На что он смотрит?
Придумайте подпись к фото, но так, чтобы это относилось к языку программирования.
Трудно было выбрать победителя прошлого такого интерактива, однако это @zheldashev.
#кек #обсуждение
@zen_of_python
Апрувнули удаление return, break и continue
Теперь, когда вы замедлили скроллинг наконец, давайте вчитаемся. В PEP-785 решили убрать эти операторы из блока finally в try-except.
В таких условиях троица из зага нередко приводит к неожиданному поведению (подавлению исключений), что ̶п̶р̶о̶в̶о̶ц̶и̶р̶у̶е̶т̶ ̶н̶а̶п̶и̶с̶а̶н̶и̶е̶ ̶г̶о̶в̶н̶о̶к̶о̶д̶а̶ усложняет отладку.
Комьюнити активно просило такое обновление на официальном форуме Python. Кстати, рекомендуем заглянуть в треды на Latest Ideas на python.org — очень терапевтичная штука, ведь многих из нас раздражают одни и те же вещи в языке.
#факт
@zen_of_python
Квиз про Django + GraphQL + Vue
Хардкорная англоязычная викторина про сайт на вышеупомянутой троице технологий на 8 вопросов. Подготовиться можно с помощью статьи.
#квиз
@zen_of_python
Вопрос подписчика
Задает @AlekseiKiselev:
«А вопрос то и назрел, как по правильному делать асинхронный скоуп в алхимии.... На ум пришел синглтон, но не понятно будет-ли течь память, так как закрытие сессии явно приводит к открытию новой, а это дико медленно, поэтому сессию закрывать крайне не охота. Может есть какие-то бест практис?
Пример, что может пойти не так?
class Db:
session: async_scoped_session
def __new__(cls, config: RelationDatabaseConfig):
if not hasattr(cls, 'instance'):
cls.instance = super(Db, cls).__new__(cls)
return cls.instance
def __init__(self, config: RelationDatabaseConfig):
# Создаем коннект к БД
self._async_engine = create_async_engine(
config.connection_string,
echo=False,
pool_pre_ping=True,
poolclass=NullPool
)
# Создаем фабрику для создания сессии
self._async_session_factory = async_sessionmaker(
self._async_engine,
expire_on_commit=False,
)
# Создаем сессию на основе фабрики
self.session = async_scoped_session(
self._async_session_factory,
scopefunc=asyncio.current_task
)
Лаконичная шпаргалка по регулярным выражениям
Регулярные выражения — это инструмент для поиска и обработки текста по заданным шаблонам. Они позволяют находить, заменять и извлекать нужные фрагменты строк с помощью специальных символов и правил. Проверка формата email, мобильного телефона, ФИО — это всё регулярки.
Хоть этот инструмент используется повсеместно, он обладает не самым очевидным синтаксисом, поэтому всё необходимое расписано на шпаргалке выше.
🍌 Регулярки пишу только по шпаргалкам
😈 Я всё помню и без них
#шпаргалка #regexp #general
Ваш код работает. Но точно ли?
Вы выкатываете новый релиз и надеетесь, что ничего не сломалось? Вручную прогоняете сценарии, вместо того чтобы раз и навсегда автоматизировать тестирование? Pytest может спасти ваш проект.
На открытом вебинаре «Искусство тестирования с pytest» 18 марта в 20:00 (мск) будут:
— Основы pytest: пишем тесты, запускаем, отлавливаем ошибки
— Фикстуры и параметризация — меньше дублирования, больше гибкости
— Оптимизация тестирования: ускоряем процесс и выстраиваем структуру проекта
Всем участникам — скидка на большое обучение «Python Developer. Professional».
Пишите код, который не ломается. Регистрируйтесь прямо сейчас: https://otus.pw/kcV7/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFJoBiKS
Витгенштейн и && ||
Продолжаем рубрику «Логики, которые помогли создать программирование». Если в прошлый раз речь шла о теории множеств, то теперь австрийский философ Витгенштейн подготовил почву для операторов И / ИЛИ.
Освежить свои познания о логических операторах в Python можно с помощью статьи.
Если вам нравится такое и вы хотите дальше почитывать о докомпьютерной логике, дайте знать с помощью реакций.
#факт
@zen_of_python
Вопросы подписчиков
Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает:
— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте;
#вопросыновичков
@zen_of_python
Вопрос подписчика
Задает @StSav012:
«Что они делают с multiprocessing.queues.Queue по пути в multiprocessing.Queue, что ломает её __class_getitem__?
https://github.com/python/cpython/issues/99509»
Пожалуйста, будьте взаимовежливы. Однажды и вам помогут в этой рубрике.
#обсуждение
@zen_of_python
asyncpg | Асинхронный PostgreSQL
Python-библиотека — дружба asyncio и PSQL, позволяет значительно ускорить все операции к вашей базе данных. При определенных условиях не имеет зависимостей, что делает ее устойчивой к ошибкам компонентов при долгосрочном использовании.
Цена: бесплатно
Проект на pypi.org
Вопрос подписчика
Задает @data_3301:
«Где можно посмотреть примеры качественного кода из прода ? Не библиотеки , а типа сайта на fastAPI + postgresql , как то сложно найти».
Пожалуйста, будьте взаимовежливы. Однажды и вам помогут в этой рубрике.
#обсуждение
@zen_of_python
Validoopsie | Валидация данных
Валидация — это проверки точности и качества исходных данных для обеспечения точности модели ML.
Если вы постоянно готовите датасеты, этот инструмент для вас. Позволяет не только проверять признаки на адекватность, но и собирать целые пайплайны для этого. Создатели обещают упор на простоту синтаксиса.
Цена: бесплатно
Репозиторий проекта
#инструмент
@zen_of_python
Почему spam и eggs?
В доках Python слова spam и eggs появляются неслучайно. Вы, наверное, знаете, что Гвидо ван Россум назвал язык в честь «Летающего цирка Монти Пайтона» — юмористическое шоу, опередившее в 70-х свое время уровнем абсурда. Яйца и ветчина вовсю эксплуатируются в одном из самых известных скетчей нетленки MPFC, его можно посмотреть на YouTube.
p.s. Не парьтесь, если сразу не поняли прикола. Если сразу всю серию на 20 минут посмотреть, точно погрузитесь в мир постиронии.
#кек
@zen_of_python
Вопросы подписчиков
Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает:
— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте;
#вопросы_новичков
@zen_of_python
Школа Айти Авторов
Этот текст видят только те, кто хотел писать про IT, но всегда откладывал.
Редакция Tproger создала закрытый канал, где они учат авторов писать лучше и зарабатывать больше на статьях про технологии.
Подпишитесь, чтобы не потерять
Хотите разобраться, как устроены веб-фреймворки и глубже понять Django?
Велком на открытый урок разбираться с WSGI, HTTP-запросами, маршрутизацией и создавать свой мини-фреймворк.
Вместо сухой теории — код, практика и разбор ключевых механизмов, на которых строятся Django и Flask. Эксперт поможет разобраться, как работают серверы, роутинг и обработка запросов.
Если вы хотите прокачаться в Python-разработке и научиться создавать продвинутые веб-приложения, этот вебинар — идеальный старт.
Спикер Леонид Орлов — опытный преподаватель и разработчик на Python и Django.
Записывайтесь и получите скидку на большое обучение «Django-разработчик».
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Измеряем «пульс» Kafka-консьюмера для автоматического перезапуска с помощью livenessProbe ❤️
Во многих наших инструментах мы используем Kafka для обработки потоков данных. В связке с Kubernetes это очень удобно и эффективно. За исключением моментов, когда Kafka-консьюмер зависает без ошибок или падений, но перестав обрабатывать сообщения. Отследить такое сложно, но можно.
Например, проблему можно решить с помощью livenessProbe, но в случае Kafka-консьюмеров единого способа для этого нет, что усложняет задачу. Сергей Коник нашел наиболее оптимальное решение этой задачи с помощью паттерна HeartBeat и Python. Благодаря периодической проверке «пульса» консьюмера мы можем быстро обнаружить зависание и автоматически перезагрузить контейнер с консьюмером.
О том, как пошагово реализовать такой механизм Сергей рассказал в новой статье. Заходите почитать!
#шерим
Квиз про __main__
Небольшая англоязычная викторина на 6 вопросов с realpython.com про главную функцию вашего Python-проекта. Для подготовки можно пользоваться статьей.
#квиз
@zen_of_python
Кого фолловить, если вы дата-инженер
Выдающийся сабреддит про инфлюэнсеров в мире Data Engineering. Если вам знакомы понятия ETL, DWH и DBMS, несколько подписок только ускорят ваш профессиональный рост. Полезно для новичков в сфере DE, которые еще формируют свою позицию относительно аспектов профессии.
* На фото Максим Бушемин — один из создателей Airflow
#факт
@zen_of_python
Редакция Tproger попросила Claude Sonnet написать частушку про джуна-питониста. За содержимое еще можно поспорить, но рифмовать модель научилась весьма годно!
#кек
@zen_of_python
Придумайте подпись к видео, но так, чтобы это относилось к языку программирования.
В прошлом подобном интерактиве было непросто выбрать самый смешной вариант, залетайте покекать в комментарии. По мнению подписчиков, смешнее всего получилось у @artsiom_ph.
p.s. Когда смотришь подобные видео (на этом питон съел целого аллигатора), понимаешь, почему ван Россум выбрал именно этого зверя символом языка.
#кек #обсуждение
@zen_of_python
Python vs C++: какой язык быстрее найдет все простые числа до миллиарда
Громкой новостью в мире Python в 2025 году стало ускорение за счет сишных tail calls.
Теперь появился смысл сравнивать Python и низкоуровневый C++ в скорости. Об этом в Tproger и написали статью. Также она является неожиданным способом познакомиться с методами поиска простых чисел.
#факт
@zen_of_python
Доступная жилплощадь карьера по клику
Нет, это не скам, это мы вас зовем прогуляться по нашему Дому IT-карьеры, в котором притаились вакансии от работодателей. Заглядывайте в окошки, изучайте интерьер квартир и откликайтесь на вакансии — никакой ипотеки, первых взносов и рефинансирования. Эта новостройка досталась вам бесплатно, как квартира той самой любимой бабушки, за которой вы ухаживали.
Тук-тук, можно?
Реклама
Командная строка Linux. Полное руководство [2022]
Обновлённое издание рассказывает про свежие возможности Bash 4.x — новые операторы перенаправления, подстановки и прочие полезные мелочи. В разделе про скрипты — разбор нормальных практик, как писать код без лишних проблем, избегать типичных ошибок и не загонять себя в тупик.
Это не просто справочник по командам, а скорее способ разобраться, как всё устроено под капотом. Как эффективно работать с терминалом, не тратить время на лишние действия и использовать мощные инструменты Unix осознанно, а не по наитию.
#книга #linux #ru
preswald | Yey Another убийца Streamlit
Интерактивные data-приложения из года в год становятся доступнее. Теперь в опенсорс вышел еще один такой фреймворк, и он уже насобирал 1,5К+ звезд на GitHub. Создатели обещают бесшовный коннект с .csv / .parquet и другими форматами, а также базами данных SQL, стильный дизайн и минималистичный синтаксис.
Цена: бесплатно
Репозиторий проекта
@zen_of_python
logis | Коммиты превратятся в научные логи
Есть ли здесь ученые? Этот пост для вас. Опенсорсный logis превращает логи / конфиги ваши экспериментов (подразумевается сборка модели ML) в сообщение коммита.
Цена: бесплатно
Репозиторий проекта
#инструмент
@zen_of_python
И aiogram, и Airflow, и этот новый проект про LLM, и бог весть еще откуда прилетает...
#кек
@zen_of_python