Python Learning
34.1K subscribers
1.93K photos
8 videos
7 files
930 links
№ 4974297878

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

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

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

Реклама на бирже - https://telega.in/c/Python_per_month
Download Telegram
itemgetter()

itemgetter() — это функция из модуля operator, которая используется для извлечения элементов из объектов, поддерживающих индексирование (например, списки, кортежи, строки).

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

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

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

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


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

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

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

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

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

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

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

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


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

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

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

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤‍🔥4
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
👍10❤‍🔥2
PlatformIO

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

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

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

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

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

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

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


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
os.rename()

В Python функция os.rename() используется для переименования файла или директории в операционной системе. Она входит в модуль os.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Найдите ошибку в коде

Ошибка в этом коде заключается в том, что функция factorial() вызывает саму себя, если n равно -1. В этом случае функция будет вызывать себя бесконечно, так как n никогда не станет равно 0.

Чтобы исправить ошибку, необходимо добавить условие, которое будет проверять, равно ли n 0. Если это так, то функция должна возвращать 1, а не вызывать саму себя.


Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🗿2
DABL

DABL (Data Analytics in Business Language) — это библиотека Python, которая упрощает использование машинного обучения для анализа данных. Она предоставляет простой и понятный интерфейс для создания моделей машинного обучения, а также для их обучения и оценки.

Чтобы начать работу с DABL, необходимо установить библиотеку. Это можно сделать с помощью следующей команды:
pip install dabl
Код с картинки создаст модель линейной регрессии, обучит ее на обучающей выборке из трех точек и оценит ее качество на тестовой выборке из тех же трех точек.

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

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

PyTTI подходит для экспериментов с искусственным интеллектом в области генерации изображений и видео.

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

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
➡️ Изменение регистра строк в Python: capitalize, camelCase, snake_case, и kebab-case

Модуль преобразования строк предлагает удобные функции для изменения регистра текста. Вы можете использовать capitalize, чтобы сделать первую букву заглавной, а также преобразовывать строки в форматы camelCase, snake_case, и kebab-case для различных стилей.

✔️ Эта функция полезна для работы с именами переменных, API или форматами данных.

🔗 Почитать подробнее

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

Как в Python работают функции с переменным количеством аргументов (*args и **kwargs), и как это можно использовать для создания гибких функций?

Ответ ⬇️
Функции с *args принимают произвольное количество позиционных аргументов, а с **kwargs — именованных аргументов. Это позволяет передавать любое количество значений и делать интерфейс функций более гибким. *args упаковывает аргументы в кортеж, а **kwargs — в словарь.

Пример использования ⚙️
def demo_func(*args, **kwargs):
print("Позиционные аргументы:", args)
print("Именованные аргументы:", kwargs)

demo_func(1, 2, 3, name="Alice", age=25)
# Позиционные аргументы: (1, 2, 3)
# Именованные аргументы: {'name': 'Alice', 'age': 25}


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
⚙️ enumerate()

Когда тебе нужно итерировать по списку с доступом к индексу элемента, используй enumerate(). Эта встроенная функция возвращает и индекс, и сам элемент в одном цикле, что удобно и лаконично.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
➡️ Разница между list.sort() и sorted() в Python

list.sort() сортирует список на месте, изменяя его, и возвращает None, тогда как sorted() создает новый отсортированный список, оставляя оригинал неизменным.

✔️ Оба метода имеют параметры key и reverse, позволяя кастомизировать сортировку.

list.sort() используется для изменения оригинального списка. • sorted() возвращает новый отсортированный список из любого итерируемого объекта.

🔗 Почитать подробнее

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12💯1🆒1