zen_of_python | Unsorted

Telegram-канал zen_of_python - Zen of Python

20145

Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL

Subscribe to a channel

Zen of Python

Python — это уже целая религия, однако Гвидо ван Россум в ней точно отказался от роли кумира.

#кек
@zen_of_python

Читать полностью…

Zen of Python

Вселенная пушит тебе знаки…

Стоит ли сегодня деплоить на прод, начинать новый проект или лучше затаиться и почистить кэш? Вытащи карту из нашей цифровой колоды и получи мудрый совет судьбы перед новым релизом, багфиксом или планёркой.

Реклама

Читать полностью…

Zen of Python

Hot Module Reloading для вашего проекта на WSGI

Тоже надоело перезапускать бота в командной строке при каждом изменении кода?

Традиционные инструменты, такие как uvicorn --reload или gunicorn --reload, при любом изменении кода полностью перезапускают сервер. Это может занимать целую вечность, если проект крупный.

Одна команда реализовала такую перезагрузку «на месте» с помощью Dependency Graph. При изменении файла система определяет все связанные с ним модули и обновляет только их.

Используя карту зависимостей и отслеживание порядка импорта, удалось сократить время обновления с 4,8 секунды до 6 миллисекунд.

✍️ — бывало, подбешивало
🗿 — ну и пускай перезагружается с нуля

#факт
@zen_of_python

Читать полностью…

Zen of Python

Вопрос подписчика

Задает @kirillkasparyants1:

«обработка файлов с расширением отличный от .txt»

От админа: если вас интересуют форматы вроде .docx, то почти для каждого из них на PyPi уже есть либа: python-docx, python-pdf и проч.

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

#обсуждение
@zen_of_python

Читать полностью…

Zen of Python

Pattern Matching в Python 3.13

Помимо No GIL и билдов для iOS-приложений, в новой версии были внесены улучшения в структурное сопоставление с образцом (Pattern Matching). Одним из ключевых нововведений стало более интуитивное сопоставление по атрибутам объектов.

Ранее для сопоставления объектов по их атрибутам требовалось использовать дополнительные методы или свойства, что усложняло код. С введением новой функциональности в Python 3.13 стало возможным напрямую сопоставлять объекты по их атрибутам в конструкции match-case.


match user:
case User(name="Admin", role=AdminRole()) as admin:
return admin.get_permissions()
case User(name=name, role="editor") if is_senior(name):
return editor_permissions()
case _:
return default_permissions()


- Если объект user является экземпляром класса User с атрибутом name, равным "Admin", и атрибутом role, являющимся экземпляром AdminRole, то он присваивается переменной admin, и вызывается метод get_permissions();
- Если user — это User с ролью "editor" и именем, удовлетворяющим условию is_senior(name), то возвращаются разрешения редактора.
- Во всех остальных случаях возвращаются разрешения по умолчанию.

Под капотом сопоставление по атрибутам работает следующим образом:

- Проверяется, является ли объект экземпляром указанного класса;
- Затем происходит попытка сопоставления указанных атрибутов объекта с заданными значениями или шаблонами;
- Если все условия выполняются, сопоставление считается успешным, и можно использовать переменные, полученные в результате сопоставления.

Читать полностью…

Zen of Python

Как создать надёжный софт, который будет работать в любых условиях?

29 апреля в 20:00 МСК на открытом вебинаре вы узнаете, как защитить свой код от проблем, которые могут возникнуть в реальной эксплуатации. А ещё:

— Как гарантировать отказоустойчивость приложений.
— Подходы к снижению влияния сбоев и ошибок в связанных сервисах.
— Основные приемы и инструменты для создания надежных систем.

Полезно для разработчиков, QA-инженеров и архитекторов.

Открытый урок пройдет в преддверие старта курса «Python Developer. Professional». Все участники получат скидку на обучение.

Регистрируйтесь прямо сейчас!

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Zen of Python

python-docx | Обращаемся с MS Word

Если вам не избежать Microsoft Word, то этот инструмент позволяет создавать, изменять и извлекать данные из документов (то есть все вариации CRUD — create, read, update, delete) с форматом .docx. Любая деталь вплоть до форматирования.

Цена: бесплатно
Репозиторий проекта

Читать полностью…

Zen of Python

«Книги изменившие мир писатели объединившие поколения»

@ithumor

Читать полностью…

Zen of Python

Second-Me | Самый солипсисткий пет-проект

Если о биологическом бессмертии пока рассуждают футуристы, то цифровое уже вполне реально, если вы можете позволить себе содержать свою LLM. Проект позволяет натренировать на любых данных о вас (переписки в мессенджерах, личный дневник и любые другие данные в любом формате). Такой цифровой двойник сможет общаться за вас в случае чего.

Репозиторий проекта
#инструмент
@zen_of_python

Читать полностью…

Zen of Python

Сегодня можно и spam, и eggs — и не только в коде!

С Пасхой, питонист!

@zen_of_python

Читать полностью…

Zen of Python

В PyPI нашли библиотеку для MEXC, которая помогала… красть крипту у установивших

Вредоносный пакет ccxt-mexc-futures маскировался под легитимное расширение для автоматизации торговли криптовалютами. Пакет крал API-ключи пользователей и управлял их ордерами, перенаправляя запросы на поддельный сервер. 

Воистину, в эпоху «Девятого вала контента» пропустить такой зловред при установке инструментария легче легкого.

#безопасность

@zen_of_python

Читать полностью…

Zen of Python

@zen_of_python

Читать полностью…

Zen of Python

Внимание: представлен Python-пакет, который делает импорт либ great again

Гений с ником Huan Xu выкатил TARIFF: open-source проект, который вводит «импортные пошлины» на Python-библиотеки. При импорте библиотека задерживается на заданный процент времени, а в консоли появляется гордое сообщение о тарифе.

Спасибо за внимание 🙏

#кек #оффтоп

Читать полностью…

Zen of Python

Тест: Какой язык программирования тебе подходит

Небольшой опросник с целью определить «ваш» язык на основании айтишных интересов. Если вы новичок и без подсказок выйдете на Python — что ж, это судьба. Вопросики-то с подковыркой!

@zen_of_python

Читать полностью…

Zen of Python

Ошибки и исключения в Python: в чём разница?

- Ошибки (errors) — это критические проблемы, такие как синтаксические ошибки, которые обнаруживаются до выполнения программы и не позволяют ей запуститься.

- Исключения (exceptions) — возникают во время выполнения программы при неожиданных ситуациях, например, при делении на ноль. Исключения можно перехватывать и обрабатывать в коде.

Распространённые ошибки

- SyntaxError — возникает при нарушении синтаксиса, например, при отсутствии закрывающей скобки:


print("Hello World" # Отсутствует закрывающая скобка



- IndentationError — возникает при неправильном отступе:


def greet():
print("Hello") # Отсутствует отступ



Распространённые исключения

- TypeError — операция между несовместимыми типами:


print("10" + 5) # Возникает TypeError



- ValueError — неподходящее значение аргумента:


num = int("abc") # Возникает ValueError



- KeyError — обращение к несуществующему ключу в словаре:


data = {"name": "Alice"}
print(data["age"]) # Возникает KeyError



- IndexError — обращение к несуществующему индексу в списке:


numbers = [1, 2, 3]
print(numbers[5]) # Возникает IndexError



- ZeroDivisionError — деление на ноль:


result = 10 / 0 # Возникает ZeroDivisionError



- FileNotFoundError — файл не найден:


with open("missing_file.txt", "r") as file:
content = file.read() # Возникает FileNotFoundError



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



class CustomError(Exception):
pass

raise CustomError("Это пользовательское исключение!")


#основы

Читать полностью…

Zen of Python

Вопросы подписчиков

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

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

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

@zen_of_python

Читать полностью…

Zen of Python

Вопрос подписчика

Задает @FieryDruid:

«Генерировал ли кто-нибудь индексы для моделей sqlalchemy в рантайме?

Так сложилось, что индексов надо достаточно много и генерируются они по определенному принципу, из-за чего вручную их описывать в модели очень не удобно.

Написали генератор, который за нас заполняет __tableargs__ модели

Но из-за такого генератора появилось странное поведение alembic

Теперь, при каждой новой миграции, он в upgrade сначала удаляет все старые индексы, а потом добавляет их же (первая генерация нормальная, но каждая последующая сопровождается такими вот артефактами)

Может кто сталкивался или есть мысли из-за чего такое поведение может быть? Порядок генерируется один и тот же, нейминги, типы и т.д тоже».

#обсуждение
@zen_of_python

Читать полностью…

Zen of Python

Как я сделал Telegram-кружки из обычного видео с помощью Python, ffmpeg и магии

Автор статьи — подписчик Tproger, описал, как с помощью Python и FFmpeg можно преобразовать видео в Telegram-кружочки. Хороший способ познакомиться с питонической обработкой видео и Telegram Bot API.

#основы
@zen_of_python

Читать полностью…

Zen of Python

CUDA Python

CUDA — платформа параллельных вычислений, с ней мы можем запускать свой код на графических процессорах.

NVIDIA очнулась, и теперь предоставляет нативную поддержку Python для этой экосистемы. Ранее для запуска использовались C / C++ или сторонние обёртки.

Теперь Python — так называемый язык первого класса в CUDA. Для специалистов в области машинного обучения это означает ускорение вычислений на GPU.

#факт
@zen_of_python

Читать полностью…

Zen of Python

try-except «укоротят»

Недавно приняли PEP 758, и там решили убрать скобочки при перечислении типов ошибок в try-except:


except (ExceptionA, ExceptionB, ExceptionC):



try:
...
except ExceptionA, ExceptionB, ExceptionC:
...


#факт
@zen_of_python

Читать полностью…

Zen of Python

picows | WebSocket-клиенты

Если вам хочется развеяться в рамках Python и «переключиться на железо», эта библиотека как раз позволяет создавать WebSocket-клиенты.

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

Репозиторий проекта
#инструмент
@zen_of_python

Читать полностью…

Zen of Python

help(): что вы о ней не знали

Это несправедливо забытый инструмент для глубокого понимания не только встроенных объектов ЯП, но и вашего проекта. Она позволяет получать информацию о функциях, модулях, объектах, символах, ключевых словах и темах. В посте вас ждут небанальные примеры ее использования.


— Передача класса или его экземпляра в help() отображает документацию класса и его методов. Даже если класс самописный.

— Ключевые слова: чтобы освежить свои познания про тот или иной оператор, тоже подойдет help():



>>> help('for')



The "for" statement
*******************

The "for" statement is used to iterate over the elements of a sequence
(such as a string, tuple or list) or other iterable object:

for_stmt ::= "for" target_list "in" starred_list ":" suite
["else" ":" suite]


— Ключевые слова:


>>> help('keywords')



Here is a list of the Python keywords. Enter any keyword to get more help.

False class from or
...


— Спецсимволы:


>>> help('symbols')



Here is a list of the punctuation symbols which Python assigns special meaning
to. Enter any symbol to get more help.

!= + <<= _
...

Читать полностью…

Zen of Python

А какие убойные книги про Python и окололежащее вы знаете? Поделитесь в комментариях.

Читать полностью…

Zen of Python

Боюсь спросить, как выглядит Pascal Pascal

#кек
@zen_of_python

Читать полностью…

Zen of Python

Вопросы подписчиков

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

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

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

@zen_of_python

Читать полностью…

Zen of Python

py.checkio.org | Игра для освоения языка

При поддержке JetBrains сделали годную игру про Python. Там вы познакомитесь с основными концепциями языка на примерах и закрепите знания с помощью небольших задачек. Можно даже отнести игру к жанру RPG. Пожалуй, самый нескучный способ учиться.

На сайт игры
#обучение
@zen_of_python

Читать полностью…

Zen of Python

Positron | IDE для «поклонников данных»

Это перспективная среда разработки, которая предлагает:
— удобную среду для обращения с ноутбуками локально;
— поддержку тысяч плагинов, включая ИИ-копайлоты;
— темную тему;
— фокус на Python и R и многое другое.

Несмотря на некоторые ограничения, она активно развивается и может стать отличной альтернативой существующим решениям.​

Самое оно побаловаться, когда PyCharm выбесил, в очередной раз «заморозившись».

#инструмент
@zen_of_python

Читать полностью…

Zen of Python

Настраиваем паука для сбора данных: как работает фреймворк Scrapy

В Tproger разобрали основные компоненты этого популярного скрейпера — пауки, пайплайны и middleware на примерах. Если продукт действительно хорош, то для него не жалко и на разных ЯП клиенты писать.

#инструмент

@zen_of_python

Читать полностью…

Zen of Python

Курс по основам API

Интерфейсы, протоколы, какие-то странные URL — всё это звучит сложно, пока не разложить по полочкам. А ведь API — штука, с которой сейчас сталкиваются почти все, кто так или иначе работает с IT.

Быстро понять, что такое API, как он устроен и где пригодится — можно даже без программирования. В этом базовом курсе собраны простые объяснения, реальные примеры и даже чуть-чуть практики в Insomnia. Разобраться в теме проще, чем кажется — особенно после такого разбора.

Ссылка на курс

#курс #api #general #начинающим #ru

Читать полностью…

Zen of Python

Подкаст про Python на YouTube | новости языка за март

Еще один выпуск MoscowPython, на сей раз про:
— PEP 751 и его новый формат лог-файлов;
— улучшения в синхронных функциях;
— подтверждение навыков Python на платформе Минцифры;
— GPT для питонической разработки и многое другое.

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

#факт
@zen_of_python

Читать полностью…
Subscribe to a channel