Библиотека
Qiskit
предназначена для работы с квантовыми вычислениями.Предоставляет инструменты для создания, выполнения и симуляции квантовых алгоритмов на реальных квантовых компьютерах и их симуляторах.
Основные компоненты библиотеки:
pip install qiskit
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤🔥2🔥2🤔2
Библиотека
Hupper
предназначена для автоматической перезагрузки процесса во время разработки.Наблюдает за файлами в проекте и автоматически перезапускает приложение, когда в коде происходят изменения.
Основные возможности библиотеки:
pip install hupper
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤🔥3🔥2
Ankigen
— это утилита, основанная на Gradio, которая использует большие языковые модели (LLM) для генерации CSV-файлов, совместимых с Anki, на основе заданных пользователем тем и предпочтений.Основные особенности:
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥3👍3🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Для получения изображений мы будем использовать Pexels API. Получить API key можно на официальном сайте (это бесплатно, дело 5 секунд).
Для обращения к API в коде используется библиотека
requests
.pip install
requests
import requests
# Указываем API-ключ для доступа к Pexels
API_KEY = "YOUR_PEXELS_API_KEY"
# Определяем базовый URL для поиска изображений в Pexels
BASE_URL = "https://api.pexels.com/v1/search"
def search_images(query, per_page=10, page=1):
"""
Функция для поиска изображений на Pexels по ключевому слову.
:param query: Ключевое слово для поиска.
:param per_page: Количество изображений на странице (макс. 80).
:param page: Номер страницы результатов.
:return: Список ссылок на изображения.
"""
headers = {
"Authorization": API_KEY # Устанавливаем заголовок авторизации с API-ключом
}
params = {
"query": query, # Ключевое слово для поиска изображений
"per_page": per_page, # Количество изображений на странице
"page": page # Номер страницы результатов
}
# Отправляем GET-запрос к API Pexels
response = requests.get(BASE_URL, headers=headers, params=params)
# Проверяем, успешен ли запрос (код 200)
if response.status_code == 200:
# Преобразуем ответ в формат JSON
data = response.json()
# Извлекаем список фотографий из ответа
photos = data.get("photos", [])
# Получаем ссылки на изображения среднего размера
image_urls = [photo["src"]["medium"] for photo in photos]
# Возвращаем список ссылок на изображения
return image_urls
else:
# Выводим сообщение об ошибке, если запрос не успешен
print(f"Ошибка: {response.status_code}")
# Возвращаем пустой список в случае ошибки
return []
# Пример использования
# Ищем изображения по запросу "hacker", ограничивая до 5 изображений
images = search_images("hacker", per_page=5)
print("Найденные изображения:")
# Проходим по всем найденным ссылкам на изображения
for img_url in images:
# Выводим каждую ссылку на изображение
print(img_url)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥3🔥3
Библиотека
h11
предназначена для работы с протоколом HTTP/1.1 на низком уровне.Реализует HTTP без использования сокетов или сетевых операций, что позволяет работать с сетевым кодом более детально и настраиваемо. Обрабатывает только логику протокола HTTP/1.1, оставляя все сетевые операции на усмотрение пользователя.
Основные особенности библиотеки
h11
— это библиотека для построения синхронных и асинхронных HTTP-клиентов и серверов с нуля, без каких-либо дополнительных зависимостей, отвечающих за сокеты или события.h11
сама по себе не асинхронная, она отлично интегрируется с asyncio
, trio
или curio
, так как не накладывает ограничений на способ работы с сокетами.pip install h11
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤🔥2👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Для удаления метаданных из Word-документа в коде используется модуль
zipfile
.import zipfile
def remove_docx_metadata(doc_path):
# Создаём имя для нового документа без метаданных
cleaned_doc_path = f"cleaned_{doc_path}"
# Открываем исходный .docx файл как zip-архив для чтения и создаём новый zip-архив для записи
with zipfile.ZipFile(doc_path, 'r') as src, zipfile.ZipFile(cleaned_doc_path, 'w') as dst:
# Проходимся по всем элементам в исходном архиве
for item in src.infolist():
# Проверяем, не является ли элемент метаданными, которые нужно удалить
if item.filename not in ["docProps/core.xml", "docProps/app.xml", "docProps/custom.xml"]:
# Если элемент не является метаданными, записываем его в новый архив
dst.writestr(item, src.read(item.filename))
# Выводим сообщение о том, что документ сохранён без метаданных
print(f"Документ сохранён без метаданных: {cleaned_doc_path}")
# Указываем путь к исходному документу .docx
doc_path = 'example.docx'
# Вызываем функцию для удаления метаданных из указанного документа
remove_docx_metadata(doc_path)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍3❤🔥2😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
Toga
предназначена для создания графических интерфейсов (GUI) и входит в проект BeeWare.Позволяет писать кросс-платформенные приложения, поддерживающие операционные системы Windows, macOS, Linux, Android и iOS.
Основные особенности библиотеки:
pip install toga
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤🔥5🔥1
git-fame
— это утилита на Python, предназначенная для анализа и визуализации вклада участников в репозитории Git.Позволяет пользователям получать информацию о том, кто и сколько внес в проект, что может быть полезно для оценки вклада команды или отдельных разработчиков.
Основные возможности:
pip install git-fame
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5👍4🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
Pygments
предназначена для подсветки синтаксиса. Позволяет легко интегрировать подсветку кода в приложения\веб-сайты, что делает код более читаемым и визуально привлекательным.Основные особенности библиотеки:
pip install Pygments
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5🔥4
Кэширование значения свойства в классе Python
Рассмотрим пример использования декоратора
🔍 Как это работает?
🔵 Мы создаем класс
🔵 При первом обращении к result выполняются "дорогие" вычисления, и результат кэшируется.
🔵 При последующих обращениях результат возвращается из кэша, а повторные вычисления больше не выполняются. Это значительно повышает производительность!
💡 Почему стоит использовать?
Используйте
➡️ Установка необходимой библиотеки:
➡️ Справочник Программиста. Подписаться
Рассмотрим пример использования декоратора
cachedproperty
из модуля boltons.cacheutils
для кэширования результатов дорогостоящих вычислений. Это поможет избежать повторных расчетов и сэкономить время!from boltons.cacheutils import cachedproperty
class ExpensiveComputation:
def __init__(self, value):
self.value = value
@cachedproperty
def result(self):
# Имитация дорогих вычислений
print("Выполняются дорогостоящие вычисления...")
return self.value ** 2
comp = ExpensiveComputation(5)
print(comp.result) # Выполняются дорогостоящие вычисления... 25
print(comp.result) # 25 (вычисление не повторяется)
ExpensiveComputation
, который принимает значение.Используйте
cachedproperty
, когда вам нужно проводить тяжёлые вычисления, которые не меняются в течение жизненного цикла объекта. Это позволяет делать код более эффективным и быстрым!pip install boltons
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥3🔥2🤔2
This media is not supported in your browser
VIEW IN TELEGRAM
Код для генерации аудиокапчи на Python
Для генерации аудиокапчи в коде используется библиотека
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для генерации аудиокапчи в коде используется библиотека
captcha
.pip install
captcha
from captcha.audio import AudioCaptcha
import random
def create_captcha_text(length=6):
# Генерируем случайный текст капчи (только цифры)
captcha_text = ''.join([str(random.randint(0, 9)) for _ in range(length)])
return captcha_text
# Создаём текст для капчи
captcha_text = create_captcha_text()
print("Сгенерированный текст для капчи:", captcha_text)
# Инициализируем объект AudioCaptcha
audio = AudioCaptcha()
# Генерируем аудиофайл капчи
audio_data = audio.generate(captcha_text)
audio.write(captcha_text, 'captcha.wav')
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
NiceGUI
позволяет создавать веб-интерфейсы с минимальным количеством кода.Предназначена для быстрого прототипирования и разработки пользовательских интерфейсов для веб-приложений.
Основные особенности библиотеки:
pip install nicegui
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥4🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Yandex-Music-Download — это утилита для загрузки треков, плейлистов и альбомов с сервиса "Яндекс.Музыка".
Позволяет пользователям скачивать музыкальный контент напрямую в локальное хранилище, сохраняя его в удобных форматах, часто с метаданными (такими как название, исполнитель, альбом, обложка и т. д.).
Основные особенности:
🔵 Поддержка различных форматов загрузки:
🟢 Треки;
🟢 Альбомы;
🟢 Плейлисты.
🔵 Сохранение метаданных: Обычно сохраняет информацию о треках, такую как исполнитель, название, обложка альбома и т.д.
🔵 Поддержка высокого качества: Возможно скачивание музыки в различных форматах, включая высококачественные (если доступно).
🔵 Автоматизация: Может быть использована для массовой загрузки контента благодаря поддержке плейлистов и ссылок на альбомы.
🔵 API Яндекс.Музыки: Использует API "Яндекс.Музыка" (или другие методы) для получения данных.
➡️ Установка:
📱 Репозиторий
➡️ Справочник Программиста. Подписаться
Позволяет пользователям скачивать музыкальный контент напрямую в локальное хранилище, сохраняя его в удобных форматах, часто с метаданными (такими как название, исполнитель, альбом, обложка и т. д.).
Основные особенности:
git clone https://github.com/kaimi-io/yandex-music-download.git
cd yandex-music-download
pip install -r requirements.txt
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥2👍2
Код для извлечения изображений из PDF-файла
Для извлечения изображений используется библиотека
➡️ Установка библиотеки:
Для извлечения изображений используется библиотека
PyMuPDF
.pip install pymupdf
import fitz
file = 'my_pdf.pdf'
# Открытие PDF-файла
pdf = fitz.open(file)
# Перебор каждой страницы PDF-файла
for i in range(len(pdf)):
# Перебор каждого изображения на текущей странице
for image in pdf.get_page_images(i):
# Получение ссылки на изображение
xref = image[0]
# Создание объекта пиксмапы из ссылки на изображение
pix = fitz.Pixmap(pdf, xref)
# Проверка, имеет ли изображение менее 5 цветовых компонентов (не является ли изображением в формате CMYK)
if pix.n < 5:
# Сохранение пиксмапы в виде изображения PNG
pix.save(f'{xref}.png')
else:
# Создание новой пиксмапы с цветовым пространством RGB
pix1 = fitz.open(fitz.csRGB, pix)
# Сохранение новой пиксмапы в виде изображения PNG
pix1.save(f'{xref}.png')
# Освобождение ресурсов, связанных с новой пиксмапой
pix1 = None
# Освобождение ресурсов, связанных с исходной пиксмапой
pix = None
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍3❤🔥2
Библиотека
Eventlet
предназначена для работы с асинхронным вводом-выводом и реализации кооперативной многозадачности.Позволяет писать код, который выглядит как синхронный, но работает асинхронно. Это достигается за счет "зелёных потоков" (green threads), которые работают поверх системных потоков и организуются самим
Eventlet
.Основные возможности библиотеки:
socket
, ssl
, etc
.) для асинхронной работы.pip install eventlet
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤🔥3
LaVague
— это инструмент на основе искусственного интеллекта, который превращает естественный язык в автоматизацию действий в браузере.Основной фокус проекта — создание Python-кода для автоматизации действий, например, заполнение форм, навигация по сайтам или выполнение сложных веб-действий.
Основные возможности:
LaVague
создаст соответствующий код.pip install lavague
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤🔥3