Python Education
Закрытый канал
Обучаем Python как маленьких, так и взрослых Ссылка: @Portal_v_IT Сотрудничество: @oleginc
Больше8 414
Подписчики
-124 часа
-207 дней
-8830 дней
Архив постов
8 414
❗️weakref.ref()
weakref.ref() из модуля weakref создаёт слабую ссылку на объект. Слабая ссылка не увеличивает счётчик ссылок объекта, позволяя ему быть удалённым сборщиком мусора, если больше нет сильных ссылок на него.
Python Education | #Python & Max
8 414
❗️Улучшение работы со строками
Конкатенация строк через + в цикле создаёт множество временных объектов, что замедляет выполнение программы. Вместо этого используйте join().
Проблема: При конкатенации строк через + создаётся новый объект строки на каждом шаге.
Решение: Используйте str.join(), который работает быстрее, так как заранее выделяет память для итоговой строки.
Python Education | #Python & Max
8 414
❗️ast.literal_eval()
Метод ast.literal_eval() из модуля ast безопасно вычисляет выражения Python из строки. Это полезно для обработки данных из текстовых файлов или ввода, где требуется парсинг структур данных, таких как списки, словари или числа.
Python Education | #Python & Max
8 414
❗️inspect.getsource()
Метод inspect.getsource() из модуля inspect позволяет получить исходный код функции, класса или метода. Это полезно для анализа кода во время выполнения или создания инструментов для отладки и документации.
Python Education | #Python & Max
8 414
❗️Интересный факт о языке: Множественное присваивание
Множественное присваивание позволяет в одной строке присвоить значения сразу нескольким переменным. Также это позволяет легко обменивать значения между переменными без использования временной переменной.
Как это работает:
• Справа от знака = создаётся кортеж значений.
• Эти значения распаковываются и присваиваются переменным слева.
Python Education | #Python & Max
8 414
❗️sys.setrecursionlimit()
В Python функция sys.setrecursionlimit() позволяет изменить максимальную глубину рекурсии. Это полезно для задач с глубокой рекурсией, таких как обход деревьев или выполнение сложных алгоритмов.
Python Education | #Python & Max
8 414
❗️PyOxidizer
PyOxidizer — это инструмент, позволяющий упаковать Python-проект в единый исполняемый файл, включающий интерпретатор Python, все необходимые библиотеки и ресурсы. Это позволяет запускать ваши приложения без необходимости предварительной установки Python или каких-либо зависимостей.
Python Education | #Python & Max
8 414
❗️Wooey
Wooey — это библиотека Python, которая позволяет создавать простые веб-интерфейсы для ваших скриптов командной строки. Она является мощным инструментом для повышения доступности, улучшения удобства использования и сбора данных.
Python Education | #Python & Max
8 414
❗️heapq.heappush() и heapq.heappop()
В Python модуль heapq предоставляет функции для работы с кучами (heap) — структурами данных для управления приоритетами. heappush() добавляет элемент в кучу, а heappop() удаляет наименьший элемент.
Python Education | #Python & Max
8 414
❗️list.append()
В Python метод list.append() добавляет элемент в конец списка. Это самый простой способ динамически расширять список.
Python Education | #Python & Max
8 414
❗️heapq.nlargest() и heapq.nsmallest()
В Python функции heapq.nlargest() и heapq.nsmallest() позволяют получить n наибольших или наименьших элементов из коллекции. Это удобно для задач, связанных с выборкой экстремальных значений.
Python Education | #Python & Max
8 414
❗️zip_longest()
В Python функция zip_longest() из модуля itertools позволяет объединять итерируемые объекты разной длины, заполняя отсутствующие значения с помощью заполнителя (fillvalue). Это полезно для работы с несоответствующими наборами данных.
Python Education | #Python & Max
8 414
❗️Masonite — мощный Python-фреймворк для веб-приложений
Masonite — это современный и простой в использовании фреймворк для создания веб-приложений. Он предлагает удобный API, поддержку архитектуры MVC и встроенные инструменты для миграций и тестирования.
• Поддержка инверсии управления (IoC) для гибкого управления зависимостями.
• Интеграция с популярными инструментами, такими как ORM Orator.
• Удобная система маршрутизации и шаблонов.
Python Education | #Python & Max
8 414
❗️Memray — профилирование памяти для Python
Memray — это современный инструмент для профилирования памяти в Python, разработанный командой Bloomberg. Он позволяет детально отслеживать выделение и использование памяти в ваших приложениях, что помогает выявлять утечки и оптимизировать производительность.
• Глубокий анализ: Memray отслеживает все выделения памяти, включая те, что происходят в нативных расширениях на C/C++.
• Гибкие отчёты: Генерирует отчёты в виде текстовых файлов, графов и HTML-страниц для наглядного представления данных.
• Поддержка многопоточности: Корректно работает с многопоточными приложениями, обеспечивая точный анализ.
• Интеграция с Jupyter: Позволяет визуализировать данные профилирования прямо в Jupyter Notebook.
Python Education | #Python & Max
8 414
❗️LiteLLM — использование любого LLM с использованием OpenAI и многое другое
LiteLLM – инструмент для гибкого и лёгкого управления LLM в Python. С ним можно быстро переключаться между моделями, контролировать затраты, интегрировать API без изменений кода и оптимизировать производительность через балансировку нагрузки.
• Поддержка единого формата для всех LLM, что упрощает интеграцию.
• Возможность управления расходами и ограничения скорости запросов для предотвращения перегрузок.
Python Education | #Python & Max
8 414
❗️Использование библиотеки Arrow для работы с датами и временем в Python
Arrow — это библиотека для более удобной работы с датами и временем в Python. Она предоставляет простой API для создания, преобразования и форматирования объектов datetime, упрощая работу с временными зонами и временем выполнения задач.
• Arrow поддерживает естественные синтаксические конструкции и форматирование дат, а также имеет встроенные функции для манипуляции временем.
Python Education | #Python & Max
8 414
❗️Разница между list.sort() и sorted() в Python
list.sort() сортирует список на месте, изменяя его, и возвращает None, тогда как sorted() создает новый отсортированный список, оставляя оригинал неизменным.
✔️ Оба метода имеют параметры key и reverse, позволяя кастомизировать сортировку.
• list.sort() используется для изменения оригинального списка. • sorted() возвращает новый отсортированный список из любого итерируемого объекта.
Python Education | #Python & Max
8 414
❗️Использование библиотеки PyTTI для генеративного искусства с использованием нейронных сетей
PyTTI — это необычная библиотека, которая позволяет создавать произведения искусства с помощью нейронных сетей. Она применяет текстурные трансформации и использует модели машинного обучения для генерации изображений, основанных на текстовых описаниях или других данных.
• PyTTI подходит для экспериментов с искусственным интеллектом в области генерации изображений и видео.
Python Education | #Python & Max
8 414
❗️Использование библиотеки UMAP для снижения размерности данных в Python
UMAP (Uniform Manifold Approximation and Projection) — это библиотека для снижения размерности, которая используется для визуализации и анализа сложных многомерных данных. Она позволяет эффективно проектировать данные на низкоразмерное пространство, сохраняя при этом основные структуры данных.
• UMAP часто используется в задачах кластеризации и визуализации высокоразмерных данных, например, в Data Science.
Python Education | #Python & Max
8 414
❗️Изменение регистра строк в Python: capitalize, camelCase, snake_case, и kebab-case
Модуль преобразования строк предлагает удобные функции для изменения регистра текста. Вы можете использовать capitalize, чтобы сделать первую букву заглавной, а также преобразовывать строки в форматы camelCase, snake_case, и kebab-case для различных стилей.
✔️ Эта функция полезна для работы с именами переменных, API или форматами данных.
Python Education | #Python & Max
