Библиотека Python разработчика | Книги по питону
19.5K subscribers
1.05K photos
391 videos
82 files
988 links
Полезные материалы для питониста по Фреймворкам Django, Flask, FastAPI, Pyramid, Tornado и др.

По всем вопросам @evgenycarter

РКН clck.ru/3Ko7Hq
Download Telegram
10 техник оптимизации программирования на Python

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

https://dev.to/jamesbright/10-python-programming-optimisation-techniques-5ckf

@BookPython
Media is too big
VIEW IN TELEGRAM
Как сделать баскетбольную игру на Python | Pygame Project

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

👉@BookPython
Сортировка списков

В Python есть два способа сортировки списка: встроенный метод списка list.sort() и встроенная функция sorted(). Вот в чем заключается их отличие:

— Функция sorted() принимает итерируемый объект и возвращает новый отсортированный список, не изменяя исходный.
— Метод list.sort() сортирует список на месте, то есть изменяет исходный список.

👉@BookPython
Manim — это библиотека, которая используется для создания анимированных визуализаций и математических демонстраций.

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

Результат выполнения кода из примера — видеофайл с анимацией данных преобразований.

👉@BookPython
Boltons.iterutils

Boltons — это набор из более чем 230 утилит на чистом Python, распространяемых по лицензии BSD, которые дополняют стандартную библиотеку. А iterutils — модуль, который предоставляет множество полезных функций для работы с итераторами.

В примере мы используем следующие функции:
— chunked: разделяет список на чанки заданного размера.
— windowed: возвращает скользящее окно заданного размера из списка.
— pairwise: возвращает пары соседних элементов из списка.
— split: разделяет список на две части по заданному условию.
— split_at: разделяет список на две части по заданному индексу.

👉@BookPython
Глубокий Анализ FastHTML

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

https://habr.com/ru/articles/838844/

👉@BookPython
Mypy

Mypy — это статический анализатор типов для Python. Он позволяет добавить статическую типизацию в Python и выявлять ошибки, связанные с типами, на этапе компиляции.

Для использования Mypy нужно аннотировать переменные специальным синтаксисом, в примере мы указали, что функция sum_list принимает список целых чисел и возвращает целое число.

После запуска, если типы не совпадают, Mypy выдаст ошибку, как показано в примере.


👉@BookPython
Завершение программы

exit() — это функция, которая позволяет завершить выполнение программы и возвратить код возврата операционной системе.
Принимает один необязательный числовой аргумент — код возврата программы. По умолчанию это 0, что означает успешное завершение, а код возврата отличный от нуля сигнализирует об ошибке или нештатной ситуации.

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

👉@BookPython
Dramatiq

Это библиотека для распределенной обработки задач в асинхронном режиме. Она основана на RabbitMQ и полностью асинхронна, что позволяет выполнять задачи параллельно и с минимальной задержкой.

В этом примере мы используем библиотеку dramatiq для определения и запуска функции my_task. Функция принимает аргумент name, который используется в выводе сообщений. Затем мы отправляем задачу с аргументом 'Alice', которая выполняется асинхронно.

Для выполнения задач необходимо настроить брокера сообщений, например, Redis или RabbitMQ, чем мы не занимались в данном примере.

👉@BookPython
IceCream

IceCream — это библиотека, которая предоставляет простой и эффективный способ отладки кода. Вместо того чтобы использовать функцию print() для отладки, вы можете использовать функцию ic() из библиотеки IceCream, которая позволяет вам инспектировать переменные, выражения и выполнение программы с помощью одного простого вызова функции.

В этом примере кода вывод ic| указывает на то, что это вывод от IceCream, а result: 6 — имя переменной и ее значение.

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

👉@BookPython
Geopandas

Geopandas — это библиотека для работы с геопространственными данными. Она базируется на библиотеке Pandas и интегрируется с другими инструментами геоинформатики, такими как Shapely, Fiona, PyProj.

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

Основные области применения:
— Картография и визуализация пространственных данных.
— Анализ и обработка данных, содержащих географическую привязку.
— Работа с геометрическими объектами: точки, линии, полигоны.
— Преобразование и проектирование геоданных.
— Пространственный анализ и геостатистика.
— Моделирование географических процессов.
— ГИС-приложения и веб-картография.

👉@BookPython
Нелокальные переменные

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

Давайте на примере рассмотрим, как нелокальная переменная работает в Python.

Для этого нам понадобится ключевое слово nonlocal.

В приведенной выше программе есть вложенная функция inner(). Для создания нелокальной переменной мы используем ключевое слово nonlocal. Функция inner() определяется внутри функции outer().

👉@BookPython
ИТ-команда Гринатома ищет опытного специалиста по машинному обучению для разработки продуктовых сервисов, связанных с обработкой естественного языка. Вам предстоит генерировать и проверять гипотезы, разрабатывать модели машинного обучения, писать тесты и взаимодействовать с командой проекта. Требуются отличные знания Python, опыт работы с DL-фреймворками, понимание принципов работы нейросетей, а также навыки работы с Linux. Будет плюсом опыт работы с системами логирования, backend-технологиями и поисковыми движками.

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

👉Узнать подробности и откликнуться можно тут: https://hh.ru/vacancy/104719493
pydoc

pydoc — это инструмент, предназначенный для генерации документации и предоставления информации о модулях, классах, функциях и методах. Этот инструмент позволяет вам получить доступ к документации и справочной информации о стандартных библиотеках и вашем собственном коде.

👉@BookPython
This media is not supported in your browser
VIEW IN TELEGRAM
Разыскиваются 5 действующих Python разработчиков 🔥🔥🔥
Для обучения AI-разработке!

Мы научим вас создавать и тренировать нейронные сети, и вы сможете:
1️⃣ Устроиться разработчиком в крупную компанию и зарабатывать от 150 тысяч руб в месяц
2️⃣ Разрабатывать такие проекты на заказ и зарабатывать от 500 тыс руб за проект
3️⃣ Создать нейро-сотрудника в вашей компании и вырасти на +30-100% в зарплате

На интенсиве будет много практики: создадим 9 нейросетей за 1 вечер:
🧬 Оценка выброса CO2 по параметрам машины
🧬 Сегментация изображения для робота доставщика
🧬 Трекинг людей на видео
🧬 Распознавание речии другие

Ведущий интенсива - Senior AI-разработчик нейросетей и основатель Университета искусственного интеллекта

🔥 Регистрируйтесь на бесплатный интенсив! Встречаемся в ближайшую среду. Вы узнаете, как освоить самую востребованную профессию 2024 года!

Реклама. ООО "ТЕРРА ЭЙАЙ". ИНН 9728019395.
PyBrain

PyBrain — это модульная библиотека машинного обучения для Python.
Ее цель — предложить гибкие, простые в использовании, но все же мощные алгоритмы для задач машинного обучения и разнообразные предопределенные среды для тестирования и сравнения ваших алгоритмов.

В этом примере мы создаем набор данных для классификации с двумя входными и тремя выходными значениями и добавляем данные в набор данных. Затем данные разделяются на обучающую и тестовую выборки и преобразуются для использования с PyBrain.
Далее создается нейронная сеть с двумя входными узлами, тремя скрытыми узлами и тремя выходными узлами и тренер для обучения сети. Сеть обучается в течение 100 эпох и выводится результат на обучающей и тестовой выборках.

👉@BookPython
Dataclass

Это декоратор, представленный в Python 3.7, который позволяет автоматически создавать методы класса для реализации структур данных. Это значительно упрощает написание классов, которые используются только для хранения данных.

Преимущества dataclass перед обычными классами

1. Автоматически создает методы __init__, __repr__, __eq__ и другие методы, которые обычно приходится писать вручную.
2. Уменьшает количество шаблонного кода, что делает код более читабельным и легко поддерживаемым.
3. Позволяет указывать типы данных для атрибутов и методов класса, что упрощает отладку кода и уменьшает вероятность появления ошибок.
4. Поддерживает наследование, что позволяет создавать более сложные структуры данных.

👉@BookPython