Справочник Программиста
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
This media is not supported in your browser
VIEW IN TELEGRAM
📄 Код для разделения страниц одного PDF-документа на несколько файлов на Python

Для разделения страниц PDF-файла в коде используется библиотека PyPDF2.

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

from PyPDF2 import PdfReader, PdfWriter


def split_pdf(input_path, output_prefix):
# Открываем PDF-файл для чтения
reader = PdfReader(input_path)

# Проходимся по страницам PDF-файла
for i in range(len(reader.pages)):
# Создаём объект для записи в PDF
writer = PdfWriter()
# Добавляем текущую страницу к объекту записи
writer.add_page(reader.pages[i])

# Формируем путь для сохранения выходного файла
output_path = f"{output_prefix}_{i}.pdf"

# Открываем файл для записи в режиме для бинарного чтения
with open(output_path, "wb") as f:
# Записываем содержимое страницы в файл
writer.write(f)


if __name__ == "__main__":
split_pdf("document.pdf", "output")


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

Библиотека mutagen предоставляет возможности для работы с аудиофайлами и метаданными.

Она поддерживает различные форматы аудио, такие как MP3, FLAC, Ogg Vorbis, WAV и другие.

Основные возможности библиотеки:
🔵Чтение и запись метаданных аудиофайлов, таких как название трека, исполнитель, альбом, год и т.д.
🔵Изменение и обновление метаданных аудиофайлов.
🔵Извлечение информации о длительности аудиофайла и его кодеке.
🔵Работа с различными форматами метаданных, такими как ID3v1, ID3v2, APEv2 и другими.

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

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

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

Нашёл данный код на просторах интернета, почти весь пришлось переписать и добавить перевод (хотя мне кажется лучше его убрать и читать по-английски)))

Для обращения к API в коде используется библиотека requests, а для перевода на русский - googletrans.

➡️Установка библиотек: pip install requests googletrans==3.1.0a0

import requests
from googletrans import Translator


def fetch_random_meal():
response = requests.get("http://themealdb.com/api/json/v1/1/random.php")
response.raise_for_status()
meal_detail = response.json().get("meals", [])[0]
return meal_detail


def display_meal_details(meal_detail):
translator = Translator()
menu_name = translator.translate(meal_detail.get("strMeal", "Неизвестно"), dest='ru')
menu_category = translator.translate(meal_detail.get("strCategory", "Неизвестно"), dest='ru')
menu_tags = translator.translate(meal_detail.get("strTags", "Неизвестно"), dest='ru')
menu_country = translator.translate(meal_detail.get("strArea", "Неизвестно"), dest='ru')
menu_instruction = translator.translate(meal_detail.get("strInstructions", "Никаких инструкций нет."), dest='ru')
menu_video = meal_detail.get("strYoutube", "Видео недоступно")

print("-------------------------------------------------------------")
print(f"Давайте приготовим {menu_name.text} на ужин!")
print(f"Это меню из {menu_country.text} и оно относится к категории {menu_category.text}!")
print(f"Теги: {menu_tags.text}")
print(f"Вы можете посмотреть видео по ссылке: {menu_video} или следовать инструкциям для приготовления:\n{menu_instruction.text}")
print("-------------------------------------------------------------")


def main():
try:
meal_detail = fetch_random_meal()
display_meal_details(meal_detail)
except requests.RequestException as e:
print(f"Ошибка при получении данных: {e}")


if __name__ == "__main__":
main()


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

Библиотека dtale предоставляет простой и интуитивно понятный интерфейс для интерактивного исследования и визуализации данных.

Она строится на основе pandas и позволяет пользователям работать с DataFrame непосредственно через веб-интерфейс.

Основные возможности библиотеки:
🔵Фильтрация, сортировка и выбор данных.
🔵Просмотр метаинформации о данных, таких как типы столбцов и наличие пропусков.
🔵Генерация различных типов графиков (гистограммы, линейные графики, scatter plots и т.д.).
🔵Настройка параметров визуализаций через интуитивный интерфейс.
🔵Возможность редактировать значения в DataFrame.
🔵Добавление и удаление столбцов и строк.
🔵Встроенные функции для анализа распределения данных.
🔵Возможность вычисления различных статистических показателей.
🔵Легкая интеграция с Jupyter Notebook и JupyterLab для удобного использования в рабочих процессах анализа данных.

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

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥4❤‍🔥2
Функция divmod() в Python

В данной статье рассмотрим, как работает функция divmod() в Python.

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

Для отслеживания изменений в коде используется класс PatternMatchingEventHandler из библиотеки watchdog.

Класс watchdog.events.PatternMatchingEventHandler предоставляет возможность обрабатывать события, связанные с изменениями файлов, основываясь на шаблонах сопоставления.

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

import time
from watchdog.observers import Observer
from watchdog.events import PatternMatchingEventHandler


class MyHandler(PatternMatchingEventHandler):
# Определяем шаблоны файлов для отслеживания
patterns = ["*.txt", "*.py"]

def process(self, event):
# Выводим путь к файлу и тип события
print(event.src_path, event.event_type)

def on_modified(self, event):
# Вызываем метод process при изменении файла
self.process(event)

def on_created(self, event):
# Вызываем метод process при создании файла
self.process(event)


if __name__ == '__main__':
event_handler = MyHandler()
observer = Observer()
# Установка пути к текущей директории
path = '.'
# Запланировать отслеживание событий в указанной директории рекурсивно
observer.schedule(event_handler, path, recursive=True)
observer.start()

try:
while True:
# Пауза на 1 секунду
time.sleep(1)
except KeyboardInterrupt:
# Остановка Observer при обнаружении прерывания с клавиатуры
observer.stop()
# Ожидание завершения Observer
observer.join()


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

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

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

Основные возможности библиотеки:
🔵Автоматическая визуализация данных: автоматически генерирует разнообразные графики и диаграммы, такие как гистограммы, диаграммы рассеяния, корреляционные матрицы и многие другие, всего за несколько строк кода.
🔵Обработка пропущенных значений и выбросов: помогает идентифицировать и визуализировать пропущенные значения и выбросы в данных.
🔵Поддержка различных форматов данных: может работать с различными форматами данных, включая CSV, TSV, и Pandas DataFrame.
🔵Интерактивные графики: поддержка интерактивных графиков через библиотеки Plotly и Bokeh.
🔵Интеграция с Pandas и другими библиотеками: легко интегрируется с другими популярными библиотеками для анализа данных, такими как Pandas, NumPy и Matplotlib.

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

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

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

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

➡️Установка moviepy: pip install moviepy

from moviepy.editor import VideoFileClip, concatenate_videoclips, vfx

# Загрузка видеоклипов
clip1 = VideoFileClip('clip1.mp4')
clip2 = VideoFileClip('clip2.mp4')

# Добавление перехода между видеоклипами
transition = vfx.fadein(clip2, duration=1)

# Комбинирование видеоклипов с переходом
final_clip = concatenate_videoclips([clip1, transition, clip2])

# Сохранение видео с добавленными переходами
final_clip.write_videofile('output.mp4')


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

Библиотека Bidict предоставляет реализацию двухсторонних словарей (bidirectional mappings), которые позволяют использовать как ключи, так и значения для быстрого поиска.

Основные особенности библиотеки:
🔵Поддержка двунаправленных операций поиска по ключу и значению.
🔵Удобные методы для добавления, удаления и обновления элементов в словаре.
🔵Поддержка итерации по ключам и значениям словаря.
🔵Возможность получения обратного словаря с помощью метода inverse().
🔵Поддержка сериализации и десериализации словаря.

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

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤‍🔥2🔥1
🖼Удаление объектов и восстановление изображений на Python

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

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

📱 Проект на GitHub

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

Библиотека H2O Wave предназначена для быстрого создания и развертывания интерактивных веб-приложений.

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

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

Основные особенности библиотеки:
🔵Позволяет создавать веб-приложения без необходимости глубокого знания фронтенд-разработки.
🔵Включает в себя готовые компоненты для построения графиков, таблиц, форм и других элементов интерфейса.
🔵Поддерживаются такие типы визуализаций, как линейные графики, гистограммы, круговые диаграммы, и т.д.
🔵Приложения могут быть интерактивными, поддерживая пользовательский ввод и реагируя на действия пользователя.
🔵Можно создавать формы, кнопки, выпадающие списки и другие элементы интерфейса.
🔵Позволяет интегрировать различные библиотеки и инструменты Python, такие как pandas, numpy, scikit-learn, и другие.
🔵Можно подключать и использовать сторонние API и сервисы.
🔵Приложения, созданные с помощью H2O Wave, легко развертываются на различных платформах, включая локальные серверы и облачные сервисы.

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

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

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