Zen of Python
20.1K subscribers
1.21K photos
161 videos
32 files
3.16K links
Полный Дзен Пайтона в одном канале

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/xZOL
Download Telegram
Можно ли использовать оператор from … * внутри функции?
Anonymous Quiz
77%
Да
23%
Нет
👎17🌚5🔥2
Доступная жилплощадь карьера по клику

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

Тук-тук, можно?

Реклама
👍1
Вопрос подписчика

Задает @StSav012:

«Что они делают с multiprocessing.queues.Queue по пути в multiprocessing.Queue, что ломает её __class_getitem__?
https://github.com/python/cpython/issues/99509»

Пожалуйста, будьте взаимовежливы. Однажды и вам помогут в этой рубрике.

#обсуждение

@zen_of_python
👀1
Python vs C++: какой язык быстрее найдет все простые числа до миллиарда

Громкой новостью в мире Python в 2025 году стало ускорение за счет сишных tail calls.

Теперь появился смысл сравнивать Python и низкоуровневый C++ в скорости. Об этом в Tproger и написали статью. Также она является неожиданным способом познакомиться с методами поиска простых чисел.

#факт

@zen_of_python
👍5
Вопросы подписчиков

Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает:

— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте;

#вопросыновичков

@zen_of_python
This media is not supported in your browser
VIEW IN TELEGRAM
Придумайте подпись к видео, но так, чтобы это относилось к языку программирования.

В прошлом подобном интерактиве было непросто выбрать самый смешной вариант, залетайте покекать в комментарии. По мнению подписчиков, смешнее всего получилось у @artsiom_ph.

p.s. Когда смотришь подобные видео (на этом питон съел целого аллигатора), понимаешь, почему ван Россум выбрал именно этого зверя символом языка.

#кек #обсуждение 

@zen_of_python
🤯3👍1
😁23🤯2👎1🤣1
Редакция Tproger попросила Claude Sonnet написать частушку про джуна-питониста. За содержимое еще можно поспорить, но рифмовать модель научилась весьма годно!

#кек

@zen_of_python
6👍3
Витгенштейн и && ||

Продолжаем рубрику «Логики, которые помогли создать программирование». Если в прошлый раз речь шла о теории множеств, то теперь австрийский философ Витгенштейн подготовил почву для операторов И / ИЛИ.

Освежить свои познания о логических операторах в Python можно с помощью статьи.

Если вам нравится такое и вы хотите дальше почитывать о докомпьютерной логике, дайте знать с помощью реакций.

#факт

@zen_of_python
👍72❤‍🔥1
Кого фолловить, если вы дата-инженер

Выдающийся сабреддит про инфлюэнсеров в мире Data Engineering. Если вам знакомы понятия ETL, DWH и DBMS, несколько подписок только ускорят ваш профессиональный рост. Полезно для новичков в сфере DE, которые еще формируют свою позицию относительно аспектов профессии.

* На фото Максим Бушемин — один из создателей Airflow

#факт

@zen_of_python
Квиз про __main__

Небольшая англоязычная викторина на 6 вопросов с realpython.com про главную функцию вашего Python-проекта. Для подготовки можно пользоваться статьей.

#квиз

@zen_of_python
👍1
Лаконичная шпаргалка по регулярным выражениям

Регулярные выражения — это инструмент для поиска и обработки текста по заданным шаблонам. Они позволяют находить, заменять и извлекать нужные фрагменты строк с помощью специальных символов и правил. Проверка формата email, мобильного телефона, ФИО — это всё регулярки.

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

🍌 Регулярки пишу только по шпаргалкам
😈 Я всё помню и без них

#шпаргалка #regexp #general
🍌9😈3🫡2
Forwarded from SMLTECH
Измеряем «пульс» Kafka-консьюмера для автоматического перезапуска с помощью livenessProbe ❤️

Во многих наших инструментах мы используем Kafka для обработки потоков данных. В связке с Kubernetes это очень удобно и эффективно. За исключением моментов, когда Kafka-консьюмер зависает без ошибок или падений, но перестав обрабатывать сообщения. Отследить такое сложно, но можно.

Например, проблему можно решить с помощью livenessProbe, но в случае Kafka-консьюмеров единого способа для этого нет, что усложняет задачу. Сергей Коник нашел наиболее оптимальное решение этой задачи с помощью паттерна HeartBeat и Python. Благодаря периодической проверке «пульса» консьюмера мы можем быстро обнаружить зависание и автоматически перезагрузить контейнер с консьюмером.

О том, как пошагово реализовать такой механизм Сергей рассказал в новой статье. Заходите почитать!

#шерим
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Вопрос подписчика

Задает @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
)


Пожалуйста, будьте взаимовежливы. Однажды и вам помогут в этой рубрике.

#обсуждение

@zen_of_python
👍2
Какие параметры pandas.Series существуют?
Anonymous Quiz
10%
len
13%
dtype
9%
index
68%
2-й и 3-й варианты
Квиз про Django + GraphQL + Vue

Хардкорная англоязычная викторина про сайт на вышеупомянутой троице технологий на 8 вопросов. Подготовиться можно с помощью статьи.

#квиз

@zen_of_python
1
Школа Айти Авторов

Этот текст видят только те, кто хотел писать про IT, но всегда откладывал.

Редакция Tproger создала закрытый канал, где они учат авторов писать лучше и зарабатывать больше на статьях про технологии.

Подпишитесь, чтобы не потерять
👍1
Апрувнули удаление return, break и continue

Теперь, когда вы замедлили скроллинг наконец, давайте вчитаемся. В PEP-785 решили убрать эти операторы из блока finally в try-except.

В таких условиях троица из зага нередко приводит к неожиданному поведению (подавлению исключений), что  ̶п̶р̶о̶в̶о̶ц̶и̶р̶у̶е̶т̶ ̶н̶а̶п̶и̶с̶а̶н̶и̶е̶ ̶г̶о̶в̶н̶о̶к̶о̶д̶а̶ усложняет отладку.

Комьюнити активно просило такое обновление на официальном форуме Python. Кстати, рекомендуем заглянуть в треды на Latest Ideas на python.org — очень терапевтичная штука, ведь многих из нас раздражают одни и те же вещи в языке.

#факт

@zen_of_python
👍5👎3
Вопросы подписчиков

Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает:

— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте;

#вопросы_новичков

@zen_of_python
На что он смотрит?

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

Трудно было выбрать победителя прошлого такого интерактива, однако это @zheldashev.

#кек #обсуждение

@zen_of_python
👍2👎1