This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
pyinfra
предназначена для выполнения команд на удалённых серверах, управления конфигурацией, развертывания приложений и прочих задач, связанных с управлением инфраструктурой.Основные особенности библиотеки:
Ansible
или Puppet
), для работы pyinfra
не требует установки агентов на управляемые машины. Она использует стандартный SSH для взаимодействия с серверами.pip install pyinfra
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5👍3🔥2
В данной статье напишем код игры "Пинг-понг" на Python.
Пишем игру «Виселица» на Python
Крестики-нолики на Python
Крестики-нолики с графическим интерфейсом на Python
Анаграммы на Python
Пишем игру «Змейка» на Python
Игра «Угадай число» на Python
Игра «Камень, ножницы, бумага» на Python
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤🔥2👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
Bytewax
предназначена для обработки потоков данных в реальном времени.Помогает создавать программы, которые принимают данные из источников (например, очереди сообщений или базы данных), обрабатывают их и выводят результат.
Основные возможности библиотеки:
Bytewax
поддерживает механизм хранения состояния.pip install bytewax
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5🔥3
В данном shorts узнаем как работает сортировка пузырьком.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👍1🔥1🤨1
Справочник Программиста
This media is not supported in your browser
VIEW IN TELEGRAM
Для визуализации в коде используется библиотека
matplotlib
, а для генерации случайных значений - numpy
.pip install matplotlib
numpy
import matplotlib.pyplot as plt
import numpy as np
def bubble_sort(arr):
n = len(arr)
for i in range(n):
for j in range(0, n - i - 1):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
draw(arr)
return arr
def draw(arr):
plt.clf() # Очистка текущей фигуры
plt.bar(range(len(arr)), arr, color='blue')
plt.ylim(0, max(arr) + 1)
plt.pause(0.9) # Увеличенная пауза для визуализации
# Пример использования
if __name__ == "__main__":
np.random.seed(0) # Для воспроизводимости
data = np.random.randint(1, 20, size=10)
plt.ion() # Включение интерактивного режима
bubble_sort(data)
plt.ioff() # Отключение интерактивного режима
plt.show() # Показать финальную сортировку
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍4❤🔥3🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Rawdog в Python
Библиотека
Особенности библиотеки:
🔵 Генерация и выполнение скриптов: На основе введённых пользователем команд автоматически создает Python-скрипты и тут же их выполняет.
🔵 Режим взаимодействия: Есть два режима работы, одноразовое выполнение команды или режим диалога, когда ассистент продолжает генерировать и выполнять команды до завершения сессии.
🔵 Поддержка различных моделей: По умолчанию используется GPT-4 Turbo, но можно выбрать другие модели (например, GPT-3.5 или локальные модели), изменив настройки конфигурации.
🔵 Безопасность: Существует опция
➡️ Установка библиотеки:
📱 Репозиторий
➡️ Справочник Программиста. Подписаться
Библиотека
Rawdog
представляет собой ассистента в командной строке (CLI), который генерирует и автоматически выполняет Python-скрипты в ответ на запросы пользователя.Особенности библиотеки:
--leash
, которая позволяет пользователю просматривать и утверждать скрипты перед их выполнением, чтобы избежать потенциально вредных команд.pip install rawdog-ai
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤🔥3🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Для переименования файлов в коде используется стандартная библиотека
pathlib
.from pathlib import Path
def rename_files(directory, extension, prefix='', suffix=''):
# Преобразуем строку с путём к каталогу в объект Path
dir_path = Path(directory)
# Проверяем, является ли указанный путь каталогом
if not dir_path.is_dir():
# Если нет, выбрасываем исключение
raise NotADirectoryError(f"{directory} не является каталогом")
# Проходимся по всем элементам в каталоге
for file in dir_path.iterdir():
# Проверяем, является ли элемент файлом и соответствует ли расширение
if file.is_file() and (extension is None or file.suffix == extension):
# Формируем новое имя файла с учетом префикса, суффикса и расширения
new_name = f"{prefix}{file.stem}{suffix}{file.suffix}"
# Создаём новый объект Path с новым именем файла
new_file = file.with_name(new_name)
try:
# Переименовываем файл
file.rename(new_file)
# Выводим сообщение об успешном переименовании
print(f"Переименован: {file.name} -> {new_name}")
# Обрабатываем возможные исключения
except Exception as e:
# Выводим сообщение об ошибке
print(f"Ошибка при переименовании {file.name}: {e}")
if __name__ == "__main__":
# Указываем каталог, в котором будут переименовываться файлы
directory = 'files'
# Указываем расширение файлов, которые нужно переименовать
extension = '.txt'
# Указываем префикс для нового имени файла
prefix = 'new_'
# Указываем суффикс для нового имени файла
suffix = '_old'
# Вызываем функцию для переименования файлов
rename_files(directory, extension, prefix, suffix)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤🔥3🔥3
Функция callable() в Python
В данной статье рассмотрим, как работают функции
➡️ Справочник Программиста. Подписаться
В данной статье рассмотрим, как работают функции
callable()
в Python.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤🔥2
Библиотека
Yarl
предоставляет удобные методы для разбора, построения и модификации URL-адресов, делая работу с ними более простой и эффективной.Основные возможности библиотеки:
pip install yarl
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👍3🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Код для удаления метаданных из PDF-документа на Python
Для удаления метаданных из PDF-документа в коде используется библиотека
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для удаления метаданных из PDF-документа в коде используется библиотека
PyPDF2
.pip install pypdf2
import PyPDF2
def remove_metadata(input_pdf, output_pdf):
# Открываем исходный PDF-документ
with open(input_pdf, 'rb') as file:
reader = PyPDF2.PdfReader(file)
writer = PyPDF2.PdfWriter()
# Копируем страницы из исходного файла в новый
for page_num in range(len(reader.pages)):
writer.add_page(reader.pages[page_num])
# Удаляем метаданные
writer._metadata = {}
# Сохраняем PDF с удалёнными метаданными
with open(output_pdf, 'wb') as new_file:
writer.write(new_file)
# Пример использования
input_pdf = "document.pdf"
output_pdf = "output.pdf"
remove_metadata(input_pdf, output_pdf)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5👍3🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Plotext в Python
Библиотека
Основные возможности библиотеки:
🔵 Графики в терминале - отображает графики прямо в консоли с использованием символов ASCII.
🔵 Типы графиков - поддерживаются различные виды графиков: линейные графики, точечные диаграммы, гистограммы и другие.
🔵 Масштабирование и настройка осей - можно управлять диапазоном осей, изменять масштаб, и добавлять метки осей.
🔵 Цветовые схемы - поддерживает цветные графики, если терминал поддерживает цвета.
🔵 Работа с большими данными - умеет "сжимать" большие наборы данных, отображая их в уменьшенном виде.
🔵 Настраиваемые размеры графиков - можно изменять размер графика под свой терминал.
🔵 Отсутствие зависимостей - не требует никаких графических библиотек, что делает её легковесной.
✅ Пример использования библиотеки:
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Plotext
позволяет строить графики прямо в консоли/терминале.Основные возможности библиотеки:
import plotext as plt
# Генерируем данные
x = [1, 2, 3, 4, 5]
y = [10, 5, 7, 2, 8]
# Строим график
plt.plot(x, y)
# Добавляем заголовок и метки осей
plt.title("Пример графика")
plt.xlabel("Ось X")
plt.ylabel("Ось Y")
# Отображаем график
plt.show()
pip install plotext
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤🔥2👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Ciphey в Python
Библиотека
Основные возможности библиотеки:
🔵 Автоматическое определение шифра: Способна анализировать зашифрованный текст и автоматически определять, каким методом он был зашифрован.
🔵 Обширная база шифров: Поддерживаются множество шифров и кодировок, таких как Base64, Hex, Caesar cipher, Vigenère cipher и другие.
🔵 Использование вероятностных методов: Использует вероятностные модели и анализ естественного языка для определения возможного расшифрованного текста. Анализирует частотность символов и слов для повышения точности расшифровки.
🔵 Расширяемость: Можно добавлять собственные шифры и кодировки, если стандартного набора недостаточно.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Ciphey
предназначена для автоматического дешифрования текстов, закодированных различными шифрами и кодировками.Основные возможности библиотеки:
pip install ciphey
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👍4🔥3
В данном shorts напишем код для удаления старого фона изображения и его замены на новый.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥7🔥5👍1
Справочник Программиста
Код для удаления и замены фона изображения на Python
Для удаления и замены фона в коде используются библиотеки
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для удаления и замены фона в коде используются библиотеки
rembg
и Pillow
.pip install rembg Pillow
from rembg import remove
from PIL import Image
input_path = 'image.png'
background_path = 'background.jpg'
output_path = 'image_output.png'
# Открываем исходное изображение и удаляем фон
open_image = Image.open(input_path)
output = remove(open_image)
# Открываем изображение с новым фоном
background = Image.open(background_path)
# Приводим фон к размеру вырезанного изображения
background = background.resize(output.size)
# Накладываем вырезанное изображение на фон
background.paste(output, (0, 0), output)
# Сохраняем итоговое изображение
background.save(output_path)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥4❤🔥2
Библиотека sqlmap в Python
💉 Поддерживает различные типы SQL-инъекций, такие как:
⏺ Union-based SQL-инъекции
⏺ Boolean-based Blind SQL-инъекции
⏺ Time-based Blind SQL-инъекции
⏺ Error-based SQL-инъекции
⏺ Out-of-band SQL-инъекции
Основные возможности библиотеки:
🔵 Автоматическое определение уязвимостей: автоматически анализирует веб-формы, параметры GET и POST для поиска уязвимых к SQL-инъекциям точек.
🔵 Многоуровневая поддержка баз данных: Поддерживает множество СУБД, таких как MySQL, PostgreSQL, Oracle, Microsoft SQL Server, SQLite и другие.
🔵 Получение данных: Позволяет извлекать данные из уязвимой базы данных (например, таблицы, столбцы и строки).
🔵 Запуск команд: Позволяет запускать команды на базе данных (например, получение хэшей паролей, создание новых пользователей и т.д.).
🔵 Автоматизация: Легко интегрируется в автоматизированные тесты на безопасность.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
sqlmap
- это инструмент для автоматизированного тестирования веб-приложений на наличие SQL-инъекций. Активно используется в сфере информационной безопасности для проведения тестов на проникновение и защиты от уязвимостей, связанных с SQL-инъекциями.Основные возможности библиотеки:
pip install sqlmap
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥4👍4🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
eyed3
предназначена для работы с метаданными аудиофайлов в формате MP3.Используется для управления и извлечения информации о тэгах ID3, которые содержат такие данные, как название трека, имя исполнителя, альбом, жанр и другую информацию, связанную с аудиофайлами.
Основные возможности библиотеки:
import eyed3
# Открываем MP3 файл
audiofile = eyed3.load("audio.mp3")
# Получаем информацию о тэге
print("Исполнитель:", audiofile.tag.artist)
print("Альбом:", audiofile.tag.album)
print("Название трека:", audiofile.tag.title)
# Изменяем метаданные
audiofile.tag.artist = "Новый артист"
audiofile.tag.album = "Новый альбом"
audiofile.tag.title = "Новое название трека"
# Сохраняем изменения
audiofile.tag.save()
pip install eyed3
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥3👍3🔥2
Media is too big
VIEW IN TELEGRAM
Библиотека marker-pdf в Python
Библиотека
Особенно полезна для работы с различными типами документов, включая книги и научные статьи.
Основные особенности библиотеки:
🔵 Извлечение содержимого: Позволяет извлекать текст, изображения и таблицы из PDF-файлов и конвертировать их в формат markdown. Также может эффективно удалять ненужные заголовки, подзаголовки и другие артефакты из оригинального документа.
🔵 Конвертация уравнений: Поддерживает конвертацию большинства уравнений в формат LaTeX, что полезно для научных документов с математическим содержанием.
🔵 Поддержка нескольких языков: Поддерживает документы на различных языках, что делает её универсальным инструментом для широкой аудитории.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
marker-pdf
предназначена для быстрой и точной конвертации PDF-документов в формат markdown.Особенно полезна для работы с различными типами документов, включая книги и научные статьи.
Основные особенности библиотеки:
pip install marker-pdf
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Код для автоматического архивирования старых файлов на Python
Для автоматического архивирования старых файлов в коде используются модули
➡️ Справочник Программиста. Подписаться
Для автоматического архивирования старых файлов в коде используются модули
os
, shutil
и time
, которые входят в стандартную библиотеку Python.import os
import shutil
import time
def archive_old_files(source_dir, archive_dir, days_old):
# Проверяем, существует ли директория архива
if not os.path.exists(archive_dir):
# Если нет, создаем её
os.makedirs(archive_dir)
# Время отсечения: текущее время минус количество дней в секундах
cutoff_time = time.time() - (days_old * 86400)
# Проходим по всем файлам в исходной директории
for filename in os.listdir(source_dir):
# Полный путь к файлу
file_path = os.path.join(source_dir, filename)
# Проверяем, является ли путь файлом
if os.path.isfile(file_path):
# Получаем время последнего изменения файла
last_modified_time = os.path.getmtime(file_path)
# Если файл старше времени отсечения
if last_modified_time < cutoff_time:
# Перемещаем файл в архив
shutil.move(file_path, os.path.join(archive_dir, filename))
# Выводим сообщение об архивировании
print(f"Архивировано: {filename}")
source_directory = '/path/to/source' # Исходная директория
archive_directory = 'archive' # Директория архива
days_threshold = 30 # Порог в днях
# Вызов функции архивирования
archive_old_files(source_directory, archive_directory, days_threshold)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥4👍4🔥2
Утилита Elia на Python
Утилита
Основные особенности:
🔵 Интерфейс: Предлагает интуитивно понятный интерфейс, который позволяет пользователям легко взаимодействовать с различными языковыми моделями, такими как ChatGPT, Claude, Llama 3 и другими.
🔵 Клавиатурная навигация: Утилита ориентирована на клавиатурное управление, что позволяет пользователям быстро выполнять команды и получать результаты без необходимости использования мыши.
🔵 Поддержка нескольких моделей: Поддерживает множество языковых моделей, что делает её универсальным инструментом для различных задач, связанных с обработкой естественного языка.
➡️ Установка утилиты:
📱 Репозиторий
➡️ Справочник Программиста. Подписаться
Утилита
Elia
предназначена для взаимодействия с большими языковыми моделями (LLMs) и работает полностью в терминале.Основные особенности:
pipx install elia-chat
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤🔥3🔥1
Библиотека Yellowbrick в Python
Библиотека
Предоставляет удобные инструменты для создания визуализаций, которые помогают анализировать данные, оценивать производительность моделей и подбирать гиперпараметры.
Строится на основе библиотек
Основные возможности библиотеки:
🔵 Визуализация данных:
🟢 Feature Analysis (Анализ признаков): Позволяет исследовать и анализировать различные признаки (фичи) в данных.
🟢 Class Balance (Баланс классов): Визуализирует распределение классов в задачах классификации, что помогает понять, насколько сбалансированы данные.
🔵 Визуализация моделей:
🟢 ROC-AUC кривая: Построение ROC кривой и вычисление AUC для оценки производительности классификационных моделей.
🟢 Confusion Matrix (Матрица ошибок): Отображает правильные и неправильные предсказания модели, показывая, какие классы чаще всего путаются.
🟢 Prediction Error (Ошибка предсказания): Визуализирует отклонение предсказанных значений от реальных для моделей регрессии.
🟢 Residuals Plot (График остатков): Помогает оценить остатки модели регрессии, чтобы понять, хорошо ли она справляется с задачей.
🔵 Диагностика моделей:
🟢 Learning Curve (Кривая обучения): Показывает, как изменяется качество модели в зависимости от количества обучающих данных.
🟢 Validation Curve (Кривая валидации): Помогает выбрать оптимальные значения гиперпараметров, показывая зависимость качества модели от значения определенного гиперпараметра.
🟢 Silhouette Plot (Силуэтный график): Для оценки качества кластеризации с помощью коэффициента силуэта.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Yellowbrick
предназначена для визуализации данных и специально разработана для улучшения процесса машинного обучения (ML).Предоставляет удобные инструменты для создания визуализаций, которые помогают анализировать данные, оценивать производительность моделей и подбирать гиперпараметры.
Строится на основе библиотек
Matplotlib
и Scikit-Learn
, что делает её совместимой с привычными инструментами и подходами в экосистеме Python для машинного обучения.Основные возможности библиотеки:
pip install yellowbrick
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤🔥3👍2