Python Learning
34.6K subscribers
1.91K photos
8 videos
7 files
914 links
№ 4974297878

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

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

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

Реклама на бирже - https://telega.in/c/Python_per_month
加入频道
➡️ Использование библиотеки alive-progress для визуализации прогресса в терминале

alive-progress позволяет настраивать анимации, цветовую схему и предоставляет множество стилей для отображения текущего состояния задачи.

alive-progress делает выполнение длительных операций более информативным и приятным для пользователя.

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

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥22👍13🔥3🎉1
➡️ Использование библиотеки Pyee для создания и управления событиями в Python

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

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

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

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤‍🔥9🎉4
cheatsheets-matplotlib.pdf
2.8 MB
Большая шпаргалка по Matplotlib

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

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥20👍13
➡️ Использование Pint для работы с единицами измерения и конвертаций

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

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

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

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤‍🔥6🎉3
➡️ Использование cachetools для кэширования в Python

cachetools — это небольшая, но мощная библиотека для кэширования, которая предоставляет различные стратегии кэширования, такие как LRU (Least Recently Used), LFU (Least Frequently Used) и другие. Она позволяет оптимизировать производительность, избегая повторных вычислений или запросов.

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

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

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤‍🔥4
Вопрос на собеседовании

Как работают замыкания (closures) в Python, и как их можно использовать для сохранения состояния между вызовами функции?

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

🗣️ Пример:
def counter():
count = 0 # Переменная в объемлющей области видимости

def increment():
nonlocal count # Обращаемся к переменной из объемлющей области
count += 1
return count

return increment

# Пример использования
counter1 = counter()
print(counter1()) # 1
print(counter1()) # 2

counter2 = counter()
print(counter2()) # 1

# Результат выполнения:
# 1
# 2
# 1


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🍾5❤‍🔥3🤔1
➡️ Использование функции itertools.tee() для дублирования итераторов

itertools.tee() — это интересная функция из модуля itertools, позволяющая создавать несколько независимых копий одного и того же итератора.

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

✔️ itertools.tee() делает работу с итераторами гибче и удобнее.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18❤‍🔥4🔥2🏆2
➡️ Использование модуля contextvars для управления состоянием в асинхронном коде

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

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

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


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

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

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

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

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

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Вопрос на собеседовании

Что такое декораторы с аргументами в Python, и как их можно использовать?

Ответ ⬇️
Декораторы с аргументами — это функции, которые принимают параметры и возвращают другой декоратор. Это позволяет создавать более гибкие и настраиваемые декораторы, которые могут изменять поведение функций в зависимости от переданных им аргументов.

🗣️ Пример:
def repeat(times):
def decorator(func):
def wrapper(*args, **kwargs):
for _ in range(times):
result = func(*args, **kwargs)
return result
return wrapper
return decorator

@repeat(3)
def say_hello():
print("Hello!")

say_hello()


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥15👍8🍾3
➡️ Использование модуля ast для анализа и модификации исходного кода Python

Модуль ast (Abstract Syntax Tree) позволяет анализировать и модифицировать исходный код Python на уровне его абстрактного синтаксического дерева (AST). Это мощный инструмент для тех, кто хочет динамически изменять код, строить анализаторы или трансформировать Python-программы на лету.

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

✔️ ast открывает множество возможностей для тех, кто занимается метапрограммированием или созданием собственных инструментов для анализа и оптимизации Python-кода.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥7👍4
➡️ Использование библиотеки aiometer для конкурентного выполнения асинхронных задач

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

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

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

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🏆3❤‍🔥2
Вопрос на собеседовании

Как работает метод __new__() в Python?

Ответ ⬇️
Метод __new__() создает новый экземпляр класса, выделяя память для объекта. Он вызывается до метода __init__(), который уже занимается инициализацией созданного экземпляра. Это важно для работы с неизменяемыми типами, такими как str или int, а также в случаях, когда нужно контролировать процесс создания объекта, например, в паттерне Singleton.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤‍🔥2🎉2
➡️ Использование модуля contextlib.AsyncExitStack для управления асинхронными ресурсами

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

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

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


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤‍🔥2🏆1
PyOgre

PyOgre — это связка Python с OGRE (Object-Oriented Graphics Rendering Engine), мощным 3D-движком, написанным на C++. Она позволяет разработчикам создавать игры, демо-версии и другие 3D-приложения, используя Python.

Python — более простой и понятный язык, чем C++, что делает PyOgre более доступным для начинающих разработчиков. PyOgre позволяет использовать Python для создания сложных 3D-приложений, сохраняя при этом высокую производительность OGRE.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18😱6🏆3🆒2
Что будет выведено при выполнении кода?

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰4👍2
Функция sample()

Функция sample() модуля random в Python возвращает случайную выборку элементов из последовательности. В первом параметре функции указываем последовательность, во втором параметре — количество элементов, которые мы хотим выбрать случайным образом.

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