Python | Программирование
8.94K subscribers
2.53K photos
7 videos
141 files
2.11K links
Python без границ для всех

Владелец, реклама @Ak_Mihail

Преобрести рекламное размещение: https://telega.in/c/Python_libr
Download Telegram
📌 contextlib.contextmanager

Чтобы сделать переход из одной папки в другу с использованием with потребуется класс на 10 строк кода. Ситуация исправляется декоратором contextmanager.

Добавьте @contextmanager на функцию и она станет доступна для работы с with. Теперь, для того же перехода, нужно 7 строк кода.

Функция выполнится до yield, остановится и передаст управление блоку with, после продолжит выполнять функцию.

#урок
5🔥2
📌 Получение длины вещественного числа

Чтобы получить количество уникальных цифр в числе, необходимо строковое представление числа преобразовать в множество set, т.к. множество представляет собой последовательность неповторяющихся элементов.

📕 Документация

#урок
4👍3
Пишем 3 программы на Python за 5 минут

• Питон все же крутая штука! За урок мы разработаем три вполне хорошие программки, что можно спокойно использовать в вашей повседневной работе. И да, постараемся уложится в 5 минут!

🧷 https://youtu.be/uFzNc7D44HI

#Видео
6👍2
📌 Exception Chaining

Это связывание нескольких ошибок в один traceback. Используется, если при обработке исключения нужно добавить информацию или изменить тип.

Исключение, добавленное с raise ... from exc, сохраняется в __cause__. Если ошибка произошла во время выполнения try/except, то она запишется в __context__.

📕 PEP 3134

#урок
6👍3
📌 Иерархия ошибок

Встроенные ошибки наследуются от Exception, их «родственность» вы видите на фотографии.

Если поставить except LookupError раньше чем except IndexError, то второй обработчик никогда не сработает, ошибку обработает первый except.

Поэтому важно знать к какому типу какие ошибки относятся и не ставить except OSError поверх FileExistsError.

#урок
4👍2
🧩 Распределение памяти в Python: сколько и в каких случаях занимают типы данных

• В этом материале разберем, как устроено выделение памяти под объекты в Python. Потом кратко о том, как работает очистка памяти от неиспользуемых объектов. И, наконец, о разнице в занимаемой памяти на примере типов list, dict и tuple.

🧷 https://tproger.ru/articles/raspredelenie-pamjati-v-python-skolko-i-v-kakih-sluchajah-zanimajut-tipy-dannyh/

#Статья
4🔥1
🧩 Превращаем код на Python в исполняемый EXE-файл

• В этой статье мы научимся создавать «экзешники» при помощи двух библиотек: Pyinstaller and auto-py-to-exe.

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

🧷 https://tproger.ru/articles/prevrashhaem-kod-na-python-v-ispolnjaemyj-exe-fajl/

#Статья
3🔥2
Соревнование от ПАО «Интер РАО»: получи подготовленные данные и разработай ИИ-ассистента для энергетики
 
Призовой фонд — 750 000 рублей. Лучшие проекты смогут стать частью экосистемы компании.

Можно участвовать одному или командой до 5 человек. Идеальный состав: разработчик, специалист по машинному обучению, аналитик и дизайнер.

Стартуем 28 сентября. 4 задачи соревнования уже на платформе Codenrock — изучай и выбирай, за какую возьмешься.

Разработай концепт проекта: самые сильные идеи участники доработают под руководством экспертов Группы «Интер РАО» с 9 по 23 октября. Финал в Москве — 3 ноября.

Регистрируйся до 27 сентября: https://cnrlink.com/interraohack26pylibr
3👍2
📌 Подсчет суммы цифр в числе

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

Алгоритм действий будет следующим:
• Преобразуем число в строку при помощи функции str();
• Число может быть как int, так и float, следовательно необходимо произвести замену десятичного разделителя '.' при помощи строкового метода str.replace();
• Преобразовываем полученную строку с числом в список строк с цифрами функцией list();
• Далее преобразовываем каждый элемент полученного списка строк с цифрами в список целых чисел используя функцию map();
• Применяем функцию sum() к итоговому списку.

📕 Документация

#урок
5🔥3
📌 Python Development Mode

Новинка в Python 3.7. Включается с помощью аргумента -X dev при запуске скрипта. Выводит предупреждения, если разработчик что-то делает не так:

- не закрывает файлы после работы
- использует корутины без await
- передаёт неизвестную кодировку в str.encode()
- неправильно пользуется памятью

📕 Документация

#урок
5🔥2
Шпаргалка по pandas

• Эта библиотека для анализа данных прекрасно себя зарекомендовала в Data Science. Такая шпаргалка поможет в построении различных диаграмм с использованием pandas

🧷 https://cheatography.com/zayd/cheat-sheets/pandasplotting/

#Шпаргалка
5👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
1
📌 __debug__

Если скрипт не запущен с аргументом -O, у константы будет значение True. В таком случае выражение assert выполнится всегда.

Мы можем задать __debug__ значение False, выполнив скрипт с -O и ускорить работу проекта, убрав проверку на ошибки с assert.

Задать значение константе из приложения не получится, выдаст SyntaxError в Python 3.10+ или NameError.

📕 Документация

#урок
3👍3
RTX 4090 остается практичным выбором для ИИ-инженеров. 24 ГБ VRAM и поддержка FP8 на архитектуре Ada Lovelace обеспечивают высокую скорость инференса и сохранение точности. Однако для масштабных задач одной видеокарты недостаточно.

В immers.cloud можно арендовать сервер с возможностью подключения до 8 видеокарт RTX 4090 одновременно. Такая конфигурация позволяет эффективно распределять нагрузку при инференсе крупных моделей, fine-tuning или рендеринге.

В каталоге Immers Foundation Models доступны готовые конфигурации для развертывания актуальных архитектур на таких кластерах:

Qwen3.8-27B
Unlimited-OCR
Gemma-4-12B-it

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

Подобрать конфигурацию
1
📌 Type hints

Подсказки, которые никак не влияют на работу приложения, нужные только IDE и программисту, чтобы разработчику было проще писать код.

Type hints помогают автодополнению в IDE понять, что за тип у этой переменной и предложить правильные команды.

Также если передать неправильный тип данных, то IDE выдаст предупреждение, но ошибки не будет.

#урок