Справочник Программиста
6.29K subscribers
1.36K photos
387 videos
64 files
1.71K links
По рекламе - @it_start_programmer
Мои курсы - @courses_from_it_start_bot
Сайт - https://it-start.online/
YouTube - https://www.youtube.com/@it_start
Реклама на бирже - https://telega.in/c/programmersGuide_1

Предложить идею: @it_start_suggestion_bot
Download Telegram
Библиотека patchy в Python

Библиотека patchy позволяет менять код функции прямо во время выполнения программы.

Основные возможности библиотеки:
🔵Динамическое изменение кода функции: Можно заменить часть логики функции, не трогая её исходный код напрямую.
🔵Простота использования: Предоставляет удобный интерфейс для применения изменений к функциям, делая это через строковые представления изменений (diff-подобный формат).
🔵Работа с Python-кодом: Использует строковые представления Python-функций и позволяет изменять тело функции, базируясь на исходном коде, который можно передавать как текст.

Пример кода
import patchy


# Оригинальная функция
def greet():
return "Hello, world!"


# Патчим её с помощью patchy
patch = """
@@ -1,2 +1,2 @@
def greet():
- return "Hello, world!"
+ return "Hello, Python!"
"""

patchy.patch(greet, patch)

# Теперь функция возвращает обновлённое значение
print(greet()) # Выведет: "Hello, Python!"


➡️Установка библиотеки: pip install patchy

📱 Репозиторий

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤‍🔥3👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека desktop-notifier в Python

Библиотека desktop-notifier предназначена для создания уведомлений на рабочем столе.

Позволяет выводить сообщения или уведомления с помощью системных механизмов операционной системы, таких как notify-osd в Linux или toast в Windows.

Основные особенности библиотеки:
🔵Кроссплатформенность: Поддержка Windows, macOS и Linux.
🔵Простота использования: Легкий и интуитивно понятный API для создания уведомлений.
🔵Настройка уведомлений: Возможность указания заголовка и текста уведомления.
🔵Поддержка иконок: Можно добавлять иконки к уведомлениям (в зависимости от операционной системы).
🔵Настройка времени показа: Возможность указания продолжительности показа уведомления (в некоторых системах).
🔵Обработка ошибок: Обработка возможных ошибок и исключений при создании уведомлений.
🔵Поддержка разных стилей уведомлений: Возможность создания различных стилей уведомлений, таких как баннеры или всплывающие окна.
🔵Интеграция с системными уведомлениями: Использует встроенные механизмы операционной системы для отображения уведомлений.

➡️Установка библиотеки: pip install desktop-notifier

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤‍🔥3👍2
📺 Чистая обработка входных данных на Python

В данном shorts поговорим про обработку входных данных используя match-case.

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥6🔥2
Библиотека stream-unzip в Python

Библиотека stream-unzip позволяет извлекать файлы из ZIP-архивов в потоковом режиме, не загружая весь архив в память.

Основные особенности библиотеки:
🔵Эффективность по памяти: Позволяет извлекать файлы без необходимости загружать весь ZIP-архив в оперативную память, что значительно снижает потребление ресурсов.
🔵Поддержка различных форматов: Поддерживает несколько форматов сжатия, включая Deflate и Deflate64, а также ZIP-файлы с AES-шифрованием и Legacy-шифрованием (ZipCrypto).
🔵Работа с большими файлами: Может обрабатывать ZIP-файлы, размер которых превышает 4 ГБ, что является ограничением для некоторых других библиотек.

➡️Установка библиотеки: pip install stream-unzip

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤‍🔥3
📝Библиотека whylogs в Python

Библиотека whylogs предназначена для анализа данных. Помогает мониторить и логировать качество данных в реальном времени.

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

Основные возможности библиотеки:
🔵Профилирование данных: Автоматически собирает статистики по данным, такие как распределение значений, количество уникальных значений, количество пропусков, корреляции и другие показатели.
🔵Поддержка различных типов данных: Поддерживает как табличные данные (CSV, Pandas DataFrame), так и потоковые данные (Kafka, Spark).
🔵Детекция аномалий: Позволяет отслеживать изменения в распределении данных, чтобы автоматически находить аномалии, такие как смещение данных, увеличение доли пропущенных значений и другие.
🔵Легкость интеграции: Легко интегрируется с существующими пайплайнами данных и может использоваться как для онлайнового мониторинга, так и для анализа данных офлайн.
🔵Отчетность и визуализация: Профили данных могут быть сохранены в виде JSON-отчетов и использованы для построения графиков и аналитики.

➡️Установка библиотеки: pip install whylogs

📱 Репозиторий
⚙️ Документация
Примеры

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥4🔥3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Код для извлечения мета-тегов из HTML на Python

Для работы с HTML-файлом в коде используется библиотека beautifulsoup4.

➡️Установка библиотеки: pip install beautifulsoup4

from bs4 import BeautifulSoup


def get_meta_tags(file_path):
# Открываем HTML-файл в режиме чтения с кодировкой 'utf-8'
with open(file_path, 'r', encoding='utf-8') as file:
# Считываем содержимое файла
html = file.read()

# Создаём объект BeautifulSoup для разбора HTML-кода
soup = BeautifulSoup(html, 'html.parser')

# Ищем все теги <meta> с атрибутами 'name' и 'content' и создаем словарь
return {meta['name']: meta['content'] for meta in soup.find_all('meta', attrs={'name': True, 'content': True})}


# Указываем путь к HTML-файлу
file_path = 'index.html'

# Выводим результат работы функции, которая возвращает словарь с мета-тегами
print(get_meta_tags(file_path))


➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤‍🔥2
Библиотека chardet в Python

Библиотека chardet используется для определения кодировки текста в строках или файлах.

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

Основные особенности библиотеки:
🔵Определение кодировки: Пытается угадать, в какой кодировке закодирован текст, чтобы его можно было корректно декодировать в формате Unicode.
🔵Широкий спектр поддерживаемых кодировок: Поддерживает множество кодировок, включая UTF-8, ISO-8859-1, Windows-1251 и другие.
🔵Простота использования: Легко интегрируется в проекты и имеет интуитивно понятный API.

➡️Установка библиотеки: pip install chardet

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥5🔥3
📺 С ДНЁМ ПРОГРАММИСТА!!!

В данном shorts я поздравляю вас с Днём Программиста (+ 3 программы на Python), обязательно к просмотру! 😏

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥13👍6🔥3🎉1
Библиотека tox в Python

Библиотека tox предназначена для автоматизации тестирования и управления окружениями в Python.

Основные возможности библиотеки:
🔵Тестирование в нескольких окружениях: Позволяет запускать тесты в разных версиях Python (например, 3.7, 3.8, 3.9).
🔵Управление зависимостями: Каждое окружение в tox может иметь свои зависимости, которые будут установлены автоматически перед запуском тестов.
🔵Изоляция окружений: Использует виртуальные окружения (virtualenv), чтобы каждый тестовый запуск был полностью изолирован от системных зависимостей и окружений.
🔵Автоматизация тестов: Может быть интегрирован с CI/CD системами, такими как GitHub Actions, Travis CI и другие, для автоматического запуска тестов при изменении кода.
🔵Поддержка различных задач: Можно настроить для выполнения других задач, например, проверки стиля кода (линтинга), сборки документации и т.д.

➡️Установка библиотеки: pip install tox

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤‍🔥2
Библиотека SnowballStemmer в Python

Библиотека SnowballStemmer предназначена для стемминга слов (преобразования слов в их базовую форму), основанная на алгоритме Портера, который используется для нахождения корня (стеммы) слов.

Основные возможности библиотеки:
🔵Стемминг на разных языках: Поддерживает множество языков, включая английский, русский, французский, немецкий и другие.
🔵Легкость использования: Предоставляет удобный API для получения стемм слов.
🔵Эффективность: Быстрая и легковесная, что делает её отличным выбором для больших объемов текста.

➡️Установка библиотеки: pip install snowballstemmer

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤‍🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Код для удаления звука из видео на Python

Для удаления звука из видеофайла в коде используется библиотека moviepy.

➡️Установка библиотеки: pip install moviepy

from moviepy.editor import VideoFileClip

# Загружаем видеофайл
video = VideoFileClip("input_video.mp4")

# Создаём видео без звука
silent_video = video.without_audio()

# Сохраняем видео без звука
silent_video.write_videofile("output_video.mp4")


➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤‍🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека supervision в Python

Библиотека supervision предназначена для облегчения работы с компьютерным зрением.

Основные возможности библиотеки:
🔵Аннотации и визуализация: Позволяет легко добавлять аннотации (bounding boxes, метки) к изображениям и видео, а также поддерживает различные форматы аннотаций, что упрощает интеграцию с другими библиотеками.
🔵Работа с видео: Поддерживает обработку видеопотоков, включая разбиение на кадры, сохранение кадров и работу с аннотированным видео.
🔵Поддержка интеграций: Легко интегрируется с такими библиотеками как OpenCV, YOLO, PyTorch и другими.
🔵Гибкость и расширяемость: Можно расширять библиотеку под конкретные задачи, добавляя свои собственные визуализации и алгоритмы обработки данных.

➡️Установка библиотеки: pip install supervision

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥7❤‍🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека csvkit в Python

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

Основные утилиты:
🔵csvclean: Исправляет возможные ошибки в файле CSV, такие как строки неправильной длины.
🔵csvcut: Извлекает определенные столбцы из CSV-файла.
🔵csvgrep: Фильтрует строки CSV-файла по заданному критерию, например, с использованием регулярных выражений.
🔵csvsql: Позволяет выполнять SQL-запросы к CSV-файлу. Может также генерировать SQL-команды для создания таблиц, соответствующих данным CSV.
🔵csvstat: Проводит статистический анализ CSV-файла, предоставляя сводную информацию о данных, таких как количество строк, столбцов, минимальные и максимальные значения и т.д.
🔵csvformat: Преобразует формат CSV-файла (например, меняет разделитель).
🔵csvstat: Конвертирует данные из CSV в JSON.

➡️Установка библиотеки: pip install csvkit

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥3🔥3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Playwright в Python

Библиотека Playwright предназначена для автоматизации браузеров.

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

Основные возможности библиотеки:
🔵Мультибраузерная поддержка: Работает с Chromium, Firefox и WebKit (движок Safari), что делает его идеальным для кросс-браузерного тестирования.
🔵Поддержка headless-режима: Браузеры могут запускаться как с графическим интерфейсом, так и без него (headless-режим), что повышает производительность при выполнении тестов или парсинга.
🔵Тестирование в реальном времени: Можно взаимодействовать с браузером так, как это делает реальный пользователь: клики, ввод текста, переходы по страницам и т.д.
🔵Запись и воспроизведение действий: Возможность записывать пользовательские действия, а затем воспроизводить их программно.

Пример создания скриншота веб-страницы:
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
# Запускаем браузер Chromium
browser = p.chromium.launch(headless=False)
# Открываем новую вкладку
page = browser.new_page()
# Переходим на сайт
page.goto('https://example.com')
# Делаем скриншот страницы
page.screenshot(path='example.png')
# Закрываем браузер
browser.close()


➡️Установка библиотеки: pip install playwright
➡️Установка необходимых компонентов: python -m playwright install

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥5❤‍🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Pygamelib в Python

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

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

Основные особенности библиотеки:
🔵Текстовые и графические игры: Поддерживает как текстовые, так и графические игры, позволяя создавать, например, roguelike-игры, простые симуляции или платформеры.
🔵Работа с консолью: Легко позволяет управлять текстовыми элементами в консоли, что делает её отличным выбором для игр с интерфейсом в стиле ретро (ASCII-графика).
🔵Удобные классы и структуры данных: Предлагает готовые классы для карт, объектов, персонажей и сцен, что упрощает разработку и ускоряет процесс.
🔵Кроссплатформенность: Работает на разных операционных системах, таких как Windows, Linux и macOS.
🔵Модульная архитектура: Можно легко расширять возможности своей игры, добавляя новые модули и компоненты.

➡️Установка библиотеки: pip install pygamelib

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤‍🔥3👍2