This media is not supported in your browser
VIEW IN TELEGRAM
Код для поиска и замены текста в Word на Python
Для работы с Word-документом в коде используется библиотека
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для работы с Word-документом в коде используется библиотека
python-docx
.pip install python-docx
from docx import Document
def replace_text(doc, search, replace):
# Проходимся по всем параграфам документа
for p in doc.paragraphs:
# Если в тексте параграфа есть искомое слово
if search in p.text:
# Заменяем искомое слово на новое
p.text = p.text.replace(search, replace)
# Проходимся по всем таблицам в документе
for table in doc.tables:
# Проходимся по всем строкам в таблице
for row in table.rows:
# Проходимся по всем ячейкам в строке
for cell in row.cells:
# Рекурсивно вызываем функцию replace_text для каждой ячейки
replace_text(cell, search, replace)
doc = Document('example.docx')
# Вызываем функцию replace_text для замены слова 'old_text' на 'new_text' в документе
replace_text(doc, 'old_text', 'new_text')
# Сохраняем измененный документ под именем 'replaced_text.docx'
doc.save('replaced_text.docx')
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤🔥2👍2
Библиотека Mediapipe в Python
Библиотека
Используется для выполнения таких задач, как обнаружение лиц, отслеживание движений, сегментация объектов и многое другое.
Основные возможности библиотеки:
🔵 Обнаружение лица и отслеживание: Позволяет определять местоположение лица на изображении или видео, а также отслеживать его движения.
🔵 Отслеживание рук: Позволяет обнаруживать и отслеживать положения рук и пальцев в реальном времени, что полезно для жестового ввода и других взаимодействий.
🔵 Поза человека: Позволяет определять ключевые точки тела и отслеживать их, что полезно для приложений в области фитнеса и здравоохранения.
🔵 Сегментация объектов: Разделяет изображение или видео на различные объекты или сегменты, такие как люди, транспортные средства, животные и т.д.
🔵 Оценка глубины: Позволяет определять глубину объектов на изображении, что полезно для приложений дополненной реальности.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Mediapipe
позволяет реализовывать сложные алгоритмы обработки мультимедийных данных, таких как изображения и видео, в реальном времени.Используется для выполнения таких задач, как обнаружение лиц, отслеживание движений, сегментация объектов и многое другое.
Основные возможности библиотеки:
pip install mediapipe
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6🔥4👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Код для размытия фона изображения на Python
Для обработки изображения в коде используется библиотека
➡️ Установка библиотек:
➡️ Справочник Программиста. Подписаться
Для обработки изображения в коде используется библиотека
OpenCV
, а для распознавания человека на изображении - Mediapipe
. Также необходима установка numpy
.pip install opencv-python mediapipe numpy
import cv2
import mediapipe as mp
import numpy as np
# Инициализация Mediapipe Selfie Segmentation
mp_selfie_segmentation = mp.solutions.selfie_segmentation
# Загрузка изображения
image_path = 'image.png'
image = cv2.imread(image_path)
height, width, _ = image.shape
# Создание копии изображения для размывания фона
blurred_image = cv2.GaussianBlur(image, (21, 21), 0)
# Инициализация Selfie Segmentation
with mp_selfie_segmentation.SelfieSegmentation(model_selection=1) as selfie_segmentation:
# Обработка изображения
results = selfie_segmentation.process(cv2.cvtColor(image, cv2.COLOR_BGR2RGB))
# Создание маски для области человека
mask = results.segmentation_mask > 0.5
mask = mask.astype(np.uint8) * 255
# Инвертирование маски для фона
background_mask = cv2.bitwise_not(mask)
# Извлечение фона и размывание его
background_blurred = cv2.bitwise_and(blurred_image, blurred_image, mask=background_mask)
# Извлечение человека из исходного изображения
person = cv2.bitwise_and(image, image, mask=mask)
# Объединение размытого фона и человека
final_image = cv2.add(background_blurred, person)
# Сохранение результата
output_path = 'output.jpg'
cv2.imwrite(output_path, final_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11❤🔥3👍2
Библиотека diagrams в Python
Библиотека
Позволяет создавать визуальные представления инфраструктуры с использованием простого и интуитивно понятного синтаксиса.
Основные возможности библиотеки:
🔵 Простота использования: Синтаксис библиотеки напоминает написание кода на Python, что делает процесс создания диаграмм простым и удобным.
🔵 Поддержка множества провайдеров и сервисов: Поддерживает широкий спектр провайдеров и сервисов, что позволяет создавать комплексные диаграммы для различных сценариев использования.
🔵 Расширяемость: Возможность добавления собственных иконок и компонентов, если стандартных не хватает.
🔵 Автоматизация: Возможность интеграции в CI/CD пайплайны для автоматического обновления диаграмм.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
✅ Больше примеров
➡️ Справочник Программиста. Подписаться
Библиотека
diagrams
используется для генерации диаграмм архитектуры систем и облачных решений.Позволяет создавать визуальные представления инфраструктуры с использованием простого и интуитивно понятного синтаксиса.
Основные возможности библиотеки:
pip install diagrams
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤🔥2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Код для извлечения таблиц из HTML-файла на Python
Для парсинга и работы с HTML-файлом в коде используется библиотека
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для парсинга и работы с HTML-файлом в коде используется библиотека
beautifulsoup4
, а для удобного вывода таблицы - pandas
.pip install beautifulsoup4 pandas
from bs4 import BeautifulSoup
import pandas as pd
# Считываем содержимое HTML-файла
with open('index.html', 'r', encoding='utf-8') as file:
html_content = file.read()
# Парсим содержимое HTML-файла
soup = BeautifulSoup(html_content, 'html.parser')
# Извлекаем все таблицы
tables = soup.find_all('table')
for i, table in enumerate(tables):
# Извлекаем заголовки таблицы
headers = [header.text for header in table.find_all('th')]
# Извлекаем строки таблицы
rows = []
for row in table.find_all('tr')[1:]:
cells = [cell.text for cell in row.find_all('td')]
rows.append(cells)
# Создаём DataFrame
df = pd.DataFrame(rows, columns=headers)
print(f"Таблица {i + 1}:")
print(df)
print("\n")
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤🔥2👍2
Библиотека Pendulum в Python
Библиотека
Основные возможности библиотеки:
🔵 Более выразительный API для работы с датами и временем.
🔵 Улучшенная поддержка часовых поясов.
🔵 Упрощенное форматирование и разбор дат и времени.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Pendulum
предназначена для работы с датами и временем в Python, и предоставляет более удобный и интуитивно понятный интерфейс, чем стандартный модуль datetime
.Основные возможности библиотеки:
pip install pendulum
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4❤🔥2😎1
This media is not supported in your browser
VIEW IN TELEGRAM
Для работы с docx-файлами в коде используется библиотека
python-docx
.pip install python-docx
from docx import Document
from docx.shared import Pt, Inches
# Открываем существующий документ
doc = Document('example.docx')
# Добавляем нижний колонтитул на первую секцию документа
section = doc.sections[0]
footer = section.footer
# Добавляем параграф с нижним колонтитулом
paragraph = footer.add_paragraph()
# Настраиваем текст нижнего колонтитула
run = paragraph.add_run('Это нижний колонтитул')
run.font.size = Pt(10) # Размер шрифта
run.font.name = 'Times New Roman' # Шрифт
paragraph.alignment = 1 # Выравнивание: 0 - левое, 1 - центр, 2 - правое
# Устанавливаем отступы
paragraph.paragraph_format.left_indent = Inches(0.5)
paragraph.paragraph_format.right_indent = Inches(0.5)
# Сохраняем изменения
doc.save('example_with_footer.docx')
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍5
Модуль textwrap в Python
Модуль
Некоторые функции из модуля
🔵
🔵
🔵
🔵
➡️ Справочник Программиста. Подписаться
Модуль
textwrap
предоставляет методы для форматирования текста, учитывая различные параметры, такие как ширина строки, отступы и обрезка текста.Некоторые функции из модуля
textwrap
:textwrap.wrap()
используется для разделения текста на строки с заданной шириной. Она возвращает список строк, где каждая строка имеет ширину, указанную в аргументе width.textwrap.indent()
используется для добавления префикса к каждой строке текста. Она принимает аргументы text (текст для отступа), prefix (префикс, который нужно добавить) и необязательный аргумент predicate (функция, которая определяет, к каким строкам применять отступ).textwrap.dedent()
используется для удаления общего отступа из каждой строки текста. Она автоматически определяет общий отступ и удаляет его из каждой строки.textwrap.fill()
используется для форматирования текста в виде абзацев с заданной шириной. Она возвращает отформатированный текст, где каждый абзац имеет ширину, указанную в аргументе width.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥3🎉2
This media is not supported in your browser
VIEW IN TELEGRAM
Код для перемещения окна на второй монитор на Python
Для работы с определённым окном в коде используется модуль
➡️ Установка модулей:
➡️ Справочник Программиста. Подписаться
Для работы с определённым окном в коде используется модуль
pygetwindow
, а для работы с мониторами - модуль screeninfo
.pip install pygetwindow screeninfo
import pygetwindow as gw
from screeninfo import get_monitors
def move_window_to_another_monitor(window_title):
# Получение списка мониторов
monitors = get_monitors()
if len(monitors) < 2:
print("Нужно хотя бы два монитора для выполнения операции")
return
# Получение окна по заголовку
window = gw.getWindowsWithTitle(window_title)[0]
if not window:
print(f"Окно с заголовком '{window_title}' не найдено")
return
# Координаты окна
window_x, window_y, window_width, window_height = window.left, window.top, window.width, window.height
# Определение текущего монитора окна
current_monitor = None
for monitor in monitors:
if monitor.x <= window_x < monitor.x + monitor.width:
current_monitor = monitor
break
if not current_monitor:
print("Не удалось определить текущий монитор окна")
return
# Определение целевого монитора (следующий монитор)
target_monitor = monitors[(monitors.index(current_monitor) + 1) % len(monitors)]
# Новые координаты окна для перемещения на целевой монитор
new_window_x = target_monitor.x + 100 # Смещение от левого верхнего угла целевого монитора
new_window_y = target_monitor.y + 100 # Смещение от левого верхнего угла целевого монитора
# Перемещение окна
window.moveTo(new_window_x, new_window_y)
print(f"Окно '{window_title}' перемещено на монитор {target_monitor.name}")
# Пример использования
move_window_to_another_monitor("test.txt – Блокнот")
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤🔥4👍3
Библиотека NetworkX в Python
Библиотека
Предоставляет инструменты для работы с графами, которые могут быть полезны в различных областях, таких как анализ социальных сетей, биоинформатика, анализ транспортных сетей и другие.
Основные возможности библиотеки:
🔵 Создание графов:
🟢 Поддержка различных типов графов: неориентированные, ориентированные, мультиграфы (графы с множественными ребрами между узлами).
🟢 Простое добавление и удаление узлов и рёбер.
🔵 Манипуляции с графами:
🟢 Поддержка различных операций с графами, таких как объединение, пересечение и взвешивание графов.
🟢 Возможность добавления атрибутов к узлам и рёбрам для хранения дополнительной информации.
🔵 Алгоритмы графов: Встроенные алгоритмы для поиска путей (например, алгоритмы Дейкстры и Флойда-Уоршелла), выявления компонент связности, нахождения кратчайших путей, центральностей и многие другие.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
NetworkX
предназначена для создания, манипуляции и изучения структуры, динамики и функций сложных сетей (графов).Предоставляет инструменты для работы с графами, которые могут быть полезны в различных областях, таких как анализ социальных сетей, биоинформатика, анализ транспортных сетей и другие.
Основные возможности библиотеки:
pip install networkx
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👍5🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека xlwings в Python
Библиотека
Основные особенностей библиотеки:
🔵 Работа с Excel напрямую: Позволяет работать с Excel, как если бы его использовал непосредственно человек.
🔵 Двусторонняя связь: Возможность как читать данные из Excel в Python, так и записывать результаты работы Python-кода обратно в Excel.
🔵 Поддержка UDF: Поддерживает создание пользовательских функций (User Defined Functions, UDF), которые можно использовать в Excel, как встроенные функции.
🔵 Сложные сценарии и автоматизация: Возможность автоматизировать задачи, такие как создание отчетов или анализ данных, используя Python и Excel вместе.
🔵 Поддержка различных форматов: Работает с различными форматами файлов Excel, включая .xlsx, .xlsm и .xls.
🔵 Интеграция с
✅ Пример кода
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
xlwings
упрощает взаимодействие с Excel через COM-интерфейс и позволяет создавать, читать и изменять Excel-файлы.Основные особенностей библиотеки:
Pandas
: Легко интегрируется с Pandas
, что упрощает работу с табличными данными.import xlwings as xw
# Открываем рабочую книгу
wb = xw.Book('example.xlsx')
# Выбираем активный лист
sheet = wb.sheets.active
# Записываем значение в ячейку
sheet.range('A1').value = 'Hello, Excel!'
# Сохраняем итоговый результат
wb.save()
# Закрываем рабочую книгу
wb.close()
pip install xlwings
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥7👍5🔥3