Python Portal
55.7K subscribers
2.21K photos
265 videos
51 files
751 links
Всё самое интересное из мира Python

Связь: @devmangx

РКН: https://clck.ru/3GMMF6
Download Telegram
Вышел Typer 0.19.0

Теперь можно использовать Literal из typing для CLI-параметров, которые принимают только одно из нескольких значений. Самая долгожданная фича наконец доступна. 🎰

https://github.com/fastapi/typer

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍159
This media is not supported in your browser
VIEW IN TELEGRAM
Визуализация Python-объектов и ссылок

Многие начинающие Python-разработчики сталкиваются с путаницей при работе с изменяемостью и ссылками между переменными. Особенно тяжело разобраться при отладке сложных структур данных, когда непонятно, как именно они связаны. ⌨️

Поэтому держите memory_graph — опенсорс тул для визуализации Python-объектов и ссылок. Он показывает структуру данных, стек вызовов и связи между переменными.

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

Работает в VS Code, Jupyter, PyCharm и доступен онлайн без установки.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍38🔥96
😃😃😃

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁80🤣41👍16😢1
В PyTorch выявлены два неудачных дефолтных параметра в DataLoader, которые серьёзно снижают производительность при обучении моделей. Исправление этих настроек позволяет добиться примерно пятикратного ускорения. 🦆

При обучении на GPU данные переносятся на устройство через .to(device), после чего все вычисления выполняются уже на видеокарте. В итоге процесс получается неэффективным: когда работает GPU, CPU простаивает, и наоборот.

Использование фиксации памяти решает эту проблему. Пока модель обучается на первом мини-батче, CPU успевает заранее перенести второй мини-батч на GPU. Таким образом, видеокарта не простаивает в ожидании новых данных и сразу начинает вычисления с готовым батчем.

Реализовать это просто:

- добавить pin_memory=True в DataLoader,
- при передаче данных использовать .to(device, non_blocking=True)

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

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

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
47👍10🔥4
Практикуемся в алгоритмах на любом языке

На платформе CSES Problem Set доступно более 400 задач, охватывающих широкий спектр тем, включая динамическое программирование, графы, строки, математические задачи и многое другое, что можно решать на самых популярных языках: C/C++, Java, Python, C#.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
20👍6
🔍Тестовое собеседование на Middle Python в четверг с разработчиком из Авито

25 сентября(в четверг) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.

Как это будет:
📂 Даня, старший разработчик в Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Даня будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Дане

Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.

Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot

Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
10
Костыли наглядно

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
96😁46👍5
Время полезных шпаргалок: нашел шпаргалку с топ-9 самых популярных HTTP-запросов

Забираем в сохранёнки

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍229
Python-библиотека FindMy .py позволяет работать с сетью Apple Find My без Mac.

С её помощью можно получать и расшифровывать данные о местоположении AirTags и других аксессуаров, сканировать рядом находящиеся устройства и управлять ключами аксессуаров.

Установить просто через pip install findmy, а примеры использования есть в папке examples. Подробнее на GitHub

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
21👍7
Совет по PEP8:

Для лучшей читаемости переносите строки перед бинарными операторами (например, +, -, *, /), а не после них. Это позволяет выравнивать операторы с их операндами и избегать их разбрасывания по разным строкам.

Пример:

# good
income = (gross_wages
+ taxable_interest
+ (dividends - qualified_dividends)
- ira_deduction
- student_loan_interest)

# bad
income = (gross_wages +
taxable_interest +
(dividends - qualified_dividends) -
ira_deduction -
student_loan_interest)


👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
44👍24🔥9
Отличный open source инструмент для Web Scraping

HeadlessX позволяет легко извлекать контент с любых веб-страниц, делать скриншоты и PDF. Инструмент поддерживает интеграции с n8n, Zapier и другими сервисами автоматизации. 🎅

Более 40 техник обхода детектирования делают его удобным для сложного скрэпинга

https://github.com/SaifyXPRO/HeadlessX

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍146
Будни тестировщика

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁153🤣368🌭6👍2😢1
Если вы любите ретро-игры и цените открытый код, вам понравится OS Game Clones

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

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1614
This media is not supported in your browser
VIEW IN TELEGRAM
Теперь можно использовать Claude Code прямо в VS Code через официальное расширение и это реально удобно 👍

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

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
26👍16💊5🤔2
Media is too big
VIEW IN TELEGRAM
Какой путь проходит нейросеть, чтобы дать простой ответ на ваш вопрос

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣67👀15🔥12😁7👍43
87 идей для Python-проектов для начинающих

Al Sweigart опубликовал подборку небольших проектов — игры, головоломки, симуляции и цифровое искусство. Все проекты можно реализовать на Python с нуля, без дополнительных библиотек.

Подробнее: ссылка

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3214
Совет по Python: чтобы эффективно сортировать сложные объекты с помощью sorted() по их элементам или атрибутам, используйте itemgetter или attrgetter из модуля operator в качестве key

Этот способ быстрее и короче, чем использование lambda, и позволяет сортировать сразу по нескольким критериям.

На примере с картинки, список словарей oldtimers сортируется сначала по 'condition', а затем по 'manufactured' с помощью itemgetter, что даёт аккуратный и читаемый код.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍297
Если бы человека создавал сисадмин 👀

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
1😁125🤣4515🔥5😢1
This media is not supported in your browser
VIEW IN TELEGRAM
CodeHS представила платформу Practice

Бесплатный ресурс с сотнями задач по программированию на Java, Python, JavaScript, C++ и SQL.

Задания охватывают темы от строк и массивов до рекурсии и работы с базами данных. 😎

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥169👍5