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
​​pytest-testmon | Крохотная автоматизация тестов

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

Проект на pypi.org
#инструмент
@zen_of_python
👍1🌚1
Forwarded from Код найма
Расскажите про свой опыт поиска работы

Мы сейчас проводим исследование — хотим разобраться, как айтишники ищут работу: на что обращаете внимание в вакансии, что для вас точно красный флаг, а что — зеленая простыня. Мы хотим из первых уст узнать про все боли, подводные камни и нюансы рекрутинга в ИТ в 2025 году, поэтому просим вашей помощи — пройдите опрос, который займет у вас около 15 минут.

Давайте поможем компаниям и специалистам эффективнее и быстрее находить друг друга.
👍1🎃1
Вопросы подписчиков

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

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

#вопросы_новичков
@zen_of_python
питоническии_трон.png
1.7 MB
Раз вам зашел питонический фон для созвонов от ChatGPT, оцените, на что способен Midjourney, если не скупиться на слова в промте:

#кек
@zen_of_python
👍6🥱3😍2
Вашему вниманию — Змеиный культ Некрополиса, типичная IT-команда разработки

#кек
@zen_of_python
👍15😁8👨‍💻1
​​Между гадалками и LLM для верстки сайтов есть нечто общее: обе оперируют узким проверенным словарем на ~1000 слов, чтобы выразить свои мысли и при этом попасть в "болевые точки" клиента.

#кек
@zen_of_python
👍3😁1
​​Кто из вас сильный? Признавайтесь, надо мебель в соседнем классе перенести.

#кек
@zen_of_python
😎 — как мощны мои лапищи
🌚 — пишу с нейрокопайлотами
😎19🌚10👍3👨‍💻1
​​PyXL | Python + Bare Metal

Код можно интерпретировать непосредственно на железе без виртуальной машины (VM) и JIT-компиляции. Это положительно скажется на скорости.

Среди возможностей:
— собственный процессор, исполняющий байт-код Python напрямую, минуя традиционные интерпретаторы;

— высокая скорость отклика GPIO: В тестах на плате Arty-Z7-20 с FPGA Zynq-7000 PyXL демонстрирует время отклика GPIO в 480 наносекунд, что в 30 раз быстрее, чем у MicroPython на PyBoard;

На сайт проекта
#инструмент
@zen_of_python
data-analyst.pdf
106.1 KB
Коллекция питонических роадмапов

Вашему вниманию дорожные карты из Py-мира с небезызвестного сайта roadmap.sh.

По технологиям:
Python;
SQL;

По специальностям:
Data Engineer (потребуется VPN);
Data Analyst;
Data Scientist;

И даже Prompt Engineer, если вы хотите позабавиться или ужаснуться.

#основы
@zen_of_python
This media is not supported in your browser
VIEW IN TELEGRAM
django-action-triggers | Вебхуки для всего отовсюду на Django

Библиотека позволяет инициировать всевозможные события на вашем Django-сайте по триггеру — апдейту базы данных. В отличие от т.н. сигналов, могут управляться динамически, без редеплоя.

Репозиторий проекта
@zen_of_python
👍1
Forwarded from Типичный программист
Делитесь своим опытом в опросе про облака

Мы готовим большое исследование по облачным технологиям и хотим узнать ваше мнение.

Расскажите, как вы работаете с облаками, какие у вас возникают вопросы или трудности. Фидбэк можно оставить в этой гугл-форме

Спасибо 🙏
Please open Telegram to view this post
VIEW IN TELEGRAM
😁9👍4🔥2
В чем сила аннотаций типов

Type Hints — годный инструмент, ибо помогают находить ошибки типов ещё до запуска кода, но настоящая их сила в другом. С ними вы думаете о структуре данных, делая код менее ломким. Появились в Python 3.5 в 2015 году и прижились так хорошо. что даже IDE напоминают вам о них ворнингами.

Взгляните на функцию, что вычисляет скидку для списка товаров:


def calculate_discount(items, discount):
return [item * (1 - discount) for item in items]


Всё работает, но не совсем понятно:

— Что именно items? Список? Кортеж? Генератор?
— Какой тип у discount?
— Что возвращает функция?

Код «самопроясняется», если добавить typing.List:


from typing import List

def calculate_discount(items: List[float], discount: float) -> List[float]:
return [item * (1 - discount) for item in items]


Мы можем пойти дальше. Зачем ограничивать функцию только List[float], если она также могла бы принять кортеж, множество или генератор?


from collections.abc import Iterable

def calculate_discount(items: Iterable[float], discount: float) -> List[float]:
return [item * (1 - discount) for item in items]


Теперь items — любая итерируемая структура: список, кортеж, генератор. Такой подход делает функцию более универсальной.

Это и есть главное преимущество Type Hints: они заставляют задуматься — а не слишком ли жёсткие ограничения я накладываю на входные данные? А не стоит ли сделать интерфейс функции более абстрактным?

Допустим, вы проектируете класс заказа. Если сначала использовали List для хранения товаров, то подумав о типах, вы можете заменить это на Set, чтобы избежать повторений. Или вместо хранения всех элементов в памяти начать использовать генератор для ленивой загрузки данных из базы.

Аннотации типов подталкивают вас к обобщённому проектированию, где функции и классы не зависят от конкретных реализаций.

Входы — как можно шире, выходы — как можно конкретнее.


#основы
@zen_of_python
👍1
​​Tail Calls в Python: грокаем

Внезапно банк Точка пояснил за «хвостовые вызовы» — механизме из подкапотного C, который значительно ускорил Python в релизах конца 2024 года. Статья не для новичков, но если прорветесь, сможете щеголять на собеседованиях.

#основы
@zen_of_python
👍1👨‍💻1
​​Microsoft отказалась от поддержки Faster CPython — команда проекта уволена

Вот так просто: собрал команду, распустил команду... Если ты в Microsoft, конечно. IT-гигант поставил не на ту лошадь и запланировал ускорить язык за счет его основной реализации, но PSF опередили со своими Tail Calls.

👀 — я думал(-а), питонисты неуязвимые
🎃 — ожидаемое поведение корпораций

#факт
@zen_of_python
🎃41👀8🌚2😭2
​​Ошибки, которые можно избежать в SQL: грабли начинающего аналитика

Если вы только начинаете работать с SQL, статья поможет избежать типичных ошибок (пропуски, доступы, производительность).

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

#основы #sql
@zen_of_python
👍5🔥21
Вопросы подписчиков

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

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

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

@zen_of_python
👍1
Пет-проект в квадрате

С помощью Raspberry Pi + самописного проекта Xenolab один любитель флоры поддерживает дома крохотный садик хищных цветов, и это выглядит суперумилительно.

#кек
@zen_of_python
🔥5👍2
Питон-хвостоед

Есть такое устойчивое выражение в английском:

Lather, rinse, repeat («Вспенить, смыть, повторить»)

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

#кек
@zen_of_python
3🌭1