Python Learning
34.5K subscribers
1.91K photos
8 videos
7 files
916 links
№ 4974297878

Обучающий канал по Python

Ссылка для друга - https://yangx.top/+I7jrAQKR5xAyYTAy

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

Реклама на бирже - https://telega.in/c/Python_per_month
加入频道
➡️ Poetry — удобный менеджер зависимостей и инструмент для упаковки Python-проектов

Poetry — это современный инструмент для управления зависимостями и сборки Python-проектов. Он предоставляет удобный интерфейс для добавления и обновления зависимостей, а также упрощает процесс создания и публикации пакетов. Poetry автоматически генерирует файл pyproject.toml, который используется для управления метаданными и настройками проекта.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥6👍4
➡️ Использование contextlib.nullcontext для временного отключения контекстного менеджера

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

🗣 В этом примере nullcontext используется для обхода реального контекстного менеджера, если он не нужен в текущих условиях.

✔️ nullcontext помогает упростить код, где контекстный менеджер используется только в определённых случаях, сохраняя при этом структуру программы.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤‍🔥1
Что будет выведено при выполнении кода?

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
🤔16👍15😱4
➡️ Использование functools.reduce для последовательного применения функции к элементам коллекции

functools.reduce — это полезная функция для свёртки (агрегирования) коллекции в одно значение. Она позволяет последовательно применить функцию к парам элементов в коллекции, сводя их к одному результату. Это особенно полезно для задач вроде суммирования, умножения или более сложных операций.

🗣 В этом примере reduce используется для умножения всех элементов списка.


✔️ functools.reduce помогает сделать код более декларативным и удобным для сложных операций над коллекциями.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤‍🔥1🏆1
➡️ Использование dataclasses.replace для создания копий объектов с изменёнными полями

dataclasses.replace — это функция, которая позволяет создать новую копию объекта, изменив некоторые его поля. Это особенно полезно, когда вам нужно работать с неизменяемыми объектами, но вы хотите создать их изменённые версии без необходимости переписывать код вручную.

🗣 В этом примере replace используется для изменения одного поля в объекте без изменения оригинала.


✔️ dataclasses.replace помогает сократить код и сделать его более читаемым при работе с неизменяемыми объектами.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤‍🔥2🏆1
➡️ Tortoise ORM — асинхронный ORM для Python

Tortoise ORM — это современный асинхронный ORM, ориентированный на работу с базами данных в асинхронных Python-приложениях.

Он поддерживает аннотации типов и обеспечивает простоту использования, предлагая синтаксис, похожий на Django ORM.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤‍🔥5🏆4
➡️ Peewee — лёгкий ORM для Python

Peewee — это компактная и простая в использовании ORM-библиотека для работы с базами данных.

Она поддерживает SQLite, MySQL, PostgreSQL и предоставляет удобный API для работы с моделями, упрощая взаимодействие с базами данных.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥2❤‍🔥1🎉1
➡️ Использование itertools.accumulate для последовательных вычислений

itertools.accumulate — это функция, которая выполняет накапливающие вычисления на основе элементов и переданной функции. По умолчанию используется сложение, но вы можете передать любую другую бинарную функцию.

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

🗣 В этом примере accumulate используется для вычисления кумулятивной суммы элементов списка.


✔️ itertools.accumulate помогает легко выполнять кумулятивные вычисления без необходимости писать цикл вручную.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤‍🔥2
➡️ Использование оператора match для структурного паттерн-матчинга в Python 3.10

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

🗣 В этом примере мы используем match для обработки разных типов сообщений, представленных в виде словарей с различными ключами.


✔️ match делает код более читаемым и упрощает логику обработки данных.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🏆2❤‍🔥1
➡️ Polars — библиотека для обработки данных, оптимизированная для больших наборов

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

Polars — отличный выбор для проектов, которым требуется быстрая обработка больших объёмов данных, с минимальными затратами на память.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤‍🔥3
➡️ Pony ORM — продвинутая ORM с поддержкой генерации SQL-запросов

Pony ORM — это удобная и мощная ORM, которая позволяет писать запросы на SQL, используя синтаксис Python. Она автоматически генерирует SQL-запросы на основе Python-кода, что делает работу с базами данных простой и интуитивной.

Pony ORM — отличный выбор для разработчиков, которым важно писать лаконичный код при работе с базами данных, без явного написания SQL-запросов.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤‍🔥2🤔1
➡️ Использование types.MappingProxyType для создания неизменяемых отображений

types.MappingProxyType — это объект-обёртка, который позволяет создать неизменяемое отображение на основе существующего словаря. Он предоставляет доступ для чтения к данным словаря, но блокирует возможность их изменения, что полезно для защиты данных от случайных изменений.

🗣 В этом примере MappingProxyType используется для создания защищённого отображения.


✔️ MappingProxyType помогает обезопасить данные, которые не должны изменяться в процессе работы программы.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤‍🔥3🔥1
Что будет выведено при выполнении кода?

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6
👍13🤔10🍾6🆒1
➡️ Использование itertools.combinations_with_replacement для генерации комбинаций с повторениями

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

🗣 В этом примере combinations_with_replacement используется для генерации всех пар чисел с возможностью повторения.

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


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤‍🔥2🎉1
➡️ Piccolo ORM — современная и быстрая ORM для Python

Piccolo ORM — это асинхронная ORM для Python, которая предлагает простоту и высокую производительность. Она поддерживает автоматическую миграцию базы данных, имеет удобный синтаксис для создания моделей и запросов, и идеально подходит для использования с веб-фреймворками, такими как FastAPI и Starlette.

Piccolo ORM — отличный выбор для разработчиков, которым нужно быстро и удобно работать с базами данных, используя асинхронные операции.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤‍🔥3🏆2🤔1
➡️ AnyIO — универсальная библиотека для асинхронного программирования

AnyIO — это высокоуровневая библиотека для работы с асинхронными операциями, которая обеспечивает совместимость с asyncio, Trio и Curio. Она позволяет писать асинхронный код, не привязываясь к конкретной реализации, что упрощает поддержку различных фреймворков и библиотек.

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

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤‍🔥4🎉1
➡️ Tenacity — мощная библиотека для реализации повторных попыток (retry)

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

Tenacity — отличный инструмент для работы с нестабильными операциями, такими как запросы к API или подключения к базе данных.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥3🍾3❤‍🔥2
➡️ Использование functools.partialmethod для создания частичных методов

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

🗣 В этом примере partialmethod используется для создания метода, который фиксирует часть аргументов заранее, что упрощает вызовы.

✔️ Эта функция делает код более лаконичным и гибким при работе с методами классов.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤‍🔥2🏆1
➡️ Pygments — мощная библиотека для подсветки синтаксиса в Python

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

Pygments — отличный выбор для создания приложений, требующих визуально выделенного кода с подсветкой синтаксиса.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤‍🔥3