Справочник Программиста
6.37K subscribers
1.29K photos
375 videos
64 files
1.62K 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
Код для обновления обоев рабочего стола Windows на Python

Данный скрипт загружает случайное изображение и устанавливает его в качестве обоев рабочего стола.

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

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

from pathlib import Path
import requests
import ctypes
import tempfile


def set_random_wallpaper():
url = "https://picsum.photos/1920/1080" # Ссылка на случайное изображение
wallpaper_path = Path(tempfile.gettempdir()) / "wallpaper.jpg" # Путь к временной папке для сохранения изображения

# Отправляем GET-запрос с потоковой загрузкой (stream=True) для экономии памяти
response = requests.get(url, stream=True)
# Проверяем, что запрос выполнен успешно (код 200)
response.raise_for_status()

# Открываем файл для записи в бинарном режиме
with wallpaper_path.open("wb") as file:
# Загружаем файл частями по 8192 байта
for chunk in response.iter_content(8192):
file.write(chunk)

# Устанавливаем загруженное изображение в качестве обоев рабочего стола
ctypes.windll.user32.SystemParametersInfoW(20, 0, str(wallpaper_path), 0)
# Выводим сообщение об успешном обновлении
print("Обои рабочего стола обновлены!")


if __name__ == "__main__":
set_random_wallpaper()


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

Библиотека Modin служит ускоренной заменой для Pandas. Позволяет работать с большими наборами данных без изменений кода, используя все доступные ядра процессора.

Основные особенности библиотеки:
🔵Совместимость с Pandas: код остается тем же (import modin.pandas as pd),
🔵Автоматическое распараллеливание: использует все ядра процессора,
🔵Работает с большими объемами данных: загружает файлы быстрее, чем Pandas,
🔵Гибкая поддержка бэкендов: Ray, Dask, Omnisci.

➡️Установка библиотеки: pip install "modin[all]"

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

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

В данной статье рассмотрим способы сортировки списка в Python.

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥5👍5🔥1
📺 Создаём свой API на Python за 1 минуту FastAPI

В данном shorts напишем код своего API на Python FastAPI.

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

Библиотека functime — это инструмент для машинного обучения на временных рядах в Python, предназначенный для глобального прогнозирования и извлечения признаков из больших панельных данных.

Обеспечивает высокую производительность и эффективность благодаря использованию библиотеки Polars для параллельной обработки данных.

Основные возможности библиотеки:
🔵Быстрота: Способность прогнозировать до 100 000 временных рядов за считанные секунды на обычном ноутбуке.
🔵Эффективность: Параллельное извлечение признаков временных рядов с использованием Polars.
🔵Проверенные алгоритмы: Использование алгоритмов машинного обучения, доказавших свою эффективность в реальных бизнес-задачах и конкурсах.
🔵Поддержка экзогенных признаков: Возможность использования дополнительных переменных во всех моделях прогнозирования.
🔵Бэк-тестирование: Поддержка методов расширяющегося и скользящего окна для оценки моделей.
🔵Автоматизация: Автоматический подбор лагов и гиперпараметров с помощью FLAML.

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

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥3👍3🔥1
Справочник Программиста
📺 Создаём свой API на Python за 1 минуту FastAPI В данном shorts напишем код своего API на Python FastAPI. ➡️Справочник Программиста. Подписаться
Код для создания API генератора паролей на Python

Для создания API в коде используется библиотека FastAPI.

➡️Установка необходимых библиотек: pip install fastapi uvicorn

# pip install fastapi uvicorn

from fastapi import FastAPI, HTTPException
import random
import string

app = FastAPI()


@app.get("/generate")
def generate_password(length: int = 12):
if length < 6:
raise HTTPException(status_code=400,
detail="Минимальная длина пароля"
"– 6 символов")
chars = string.ascii_letters + string.digits + string.punctuation
password = "".join(random.choice(chars) for _ in range(length))
return {"password": password}


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

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

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

Основные возможности библиотеки:
🔵Автоматический запуск и управление туннелями ngrok.
🔵Получение публичного URL для локального сервера.
🔵Работа с несколькими туннелями одновременно.
🔵Гибкая настройка (использование собственного ngrok.yml).

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

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

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

Для получения истории браузера Google Chrome в коде используются стандартные библиотеки pathlib, shutil и sqlite3.

from pathlib import Path
import shutil
import sqlite3


def get_chrome_history(output_file="history.txt"):
# Определяем путь к файлу истории браузера Chrome
history_db = Path.home() / "AppData/Local/Google/Chrome/User Data/Default/History"
temp_db = Path("temp_history.db") # Временная копия файла истории

# Копируем файл истории, так как Chrome блокирует доступ к оригиналу
shutil.copy2(history_db, temp_db)

# SQL-запрос для извлечения данных: URL, заголовок, количество посещений
query = """
SELECT url, title, visit_count
FROM urls
ORDER BY last_visit_time DESC
"""

# Определяем путь к выходному файлу
output_path = Path(output_file)

try:
# Открываем соединение с копией базы данных
conn = sqlite3.connect(temp_db)
cursor = conn.execute(query) # Выполняем SQL-запрос

# Открываем файл для записи истории
with output_path.open("w", encoding="utf-8") as f:
for url, title, visit_count in cursor:
# Записываем информацию о посещённых сайтах в файл
f.write(f"URL: {url}\nTitle: {title}\nVisits: {visit_count}\n\n")

conn.close() # Явно закрываем соединение с базой данных

finally:
# Удаляем временный файл базы данных, даже если возникла ошибка
temp_db.unlink(missing_ok=True)
# Выводим сообщение об успешном сохранении
print(f"История сохранена в {output_path}")


# Вызываем функцию
get_chrome_history()


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

Библиотека Dask предназначена для обработки больших данных и выполнения вычислений в несколько потоков или процессов.

Позволяет масштабировать код, написанный на стандартных инструментах Python (например, NumPy, pandas, scikit-learn), на многопоточные и распределённые вычисления.

Основные возможности библиотеки:
🔵Dask DataFrame: аналог pandas DataFrame, который может обрабатывать данные, не вмещающиеся в оперативную память, используя ленивые вычисления и распределённые задачи.
🔵Dask Array: альтернатива NumPy, позволяющая работать с массивами, превышающими объём оперативной памяти, используя вычисления по частям.
🔵Dask Bag: аналог Python list и map, предназначенный для работы с неструктурированными данными (например, JSON, логами).
🔵Dask Delayed: инструмент для ленивого вычисления, позволяющий декорировать функции и создавать граф задач.
🔵Dask Distributed: кластерный планировщик для распределённых вычислений на нескольких узлах.

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

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥3🔥3
Django Grappelli — это стильный интерфейс, который улучшает стандартную админку Django Admin.

Добавляет улучшенные элементы управления, дополнительные функции и делает работу с админкой более удобной.

Основные возможности:
🔵Улучшенный и современный дизайн административной панели
🔵Улучшенные виджеты для форм и полей
🔵AJAX-поиск в связанных полях (ForeignKey, ManyToMany)
🔵Автоматическое автозаполнение полей (например, slug)
🔵Расширенные фильтры и сортировка данных
🔵Поддержка кастомного Dashboard
🔵Легкая интеграция CKEditor и TinyMCE
🔵Улучшенное управление статическими файлами и стилями

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

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

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

Библиотека python-chess предназначена для работы с шахматными партиями, анализом позиций и взаимодействием с движками вроде Stockfish.

Основные возможности библиотеки:
🔵Работа с шахматной доской
🔵Совершение ходов и проверка правил
🔵Проверка шаха, мата и пата
🔵Работа с форматами FEN и PGN
🔵Генерация списка возможных ходов
🔵Анализ позиций с шахматными движками (Stockfish и другие)
🔵Поддержка правил троекратного повторения и 50-ходового правила
🔵Вычисление ценности позиции
🔵Визуализация шахматной доски в ASCII и SVG
🔵Поддержка шахмат 960 (Fischer Random Chess)

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

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

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

Библиотека TextAttack предназначена для атаки, защиты и дообучения моделей обработки естественного языка (NLP).

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

Основные возможности библиотеки:
🔵Атака на NLP-модели
🔵Генерация текстов
🔵Обучение и защита моделей
🔵Работа с Hugging Face

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

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

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

Для распознавания объектов на изображении в коде используются библиотеки opencv и torch.

➡️Установка библиотек: pip install opencv-python torch torchvision

import cv2
import torch


def detect_objects(image_path):
# Загружаем предобученную модель YOLOv5s
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)

# Считываем изображение с диска
image = cv2.imread(image_path)

# Преобразуем изображение из формата BGR в RGB, т.к. модель YOLOv5 работает с RGB
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

# Передаём изображение в модель для детекции объектов
results = model(image)

# Отображаем изображение с выделенными объектами
results.show()


# Запрашиваем у пользователя путь к изображению
image_path = input("Введите путь к изображению: ")

# Вызываем функцию обнаружения объектов
detect_objects(image_path)


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

Библиотека outlines предназначена для контролируемой генерации текста с LLM.

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

Основные возможности библиотеки:
🔵Генерация структурированных данных: Позволяет создавать JSON, списки, числа, даты и другие структуры в соответствии с заданными шаблонами.
🔵Обратимое кодирование токенов: Позволяет точно контролировать, какие токены могут быть сгенерированы.
🔵Работа с различными моделями: Поддерживает OpenAI, Mistral, Llama.cpp и другие LLM.
🔵Генерация с ограничениями: Позволяет задавать конкретные правила вывода (например, только числа в определённом диапазоне).

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

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤‍🔥2🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
PyBoy — это эмулятор игровой консоли Nintendo Game Boy, написанный на Python. Позволяет запускать и анализировать ROM-файлы, а также взаимодействовать с играми программно.

Поддерживает работу как в оконном режиме (GUI), так и в фоновом режиме, что делает её полезной для автоматического тестирования, машинного обучения и ретро-гейминга.

Основные возможности:
🔵Эмуляция Game Boy и Game Boy Color: поддерживает большинство игр для этих платформ.
🔵Управление через Python: можно отправлять команды эмулятору, менять ввод, читать состояние памяти.
🔵Сохранение и загрузка состояния: позволяет сохранять прогресс и загружать его позже.
🔵Доступ к VRAM, регистрам и памяти: подходит для реверс-инжиниринга игр.
🔵Headless-режим: эмулятор может работать без графического интерфейса.
🔵Использование в машинном обучении: подходит для обучения агентов, играющих в игры.

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

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2❤‍🔥1
Haystack — это фреймворк для построения систем поиска и ответов на вопросы на основе нейросетей и больших языковых моделей (LLM).

Разработан компанией deepset и предназначен для обработки естественного языка (NLP), включая:
🔵Поиск по документам (Dense и Sparse Retrieval)
🔵Ответы на вопросы (Extractive & Generative QA)
🔵Кластеризацию и анализ текстов
🔵Обогащение данных с помощью LLM
🔵Создание чат-ботов с подключением к API LLM (например, OpenAI, Hugging Face)

Основные возможности:
🔵Retrieval-Augmented Generation (RAG): Позволяет объединять генеративные модели (например, GPT) с поисковыми движками, что улучшает точность ответов.
🔵Многомодальные модели: Поддержка не только текстовых, но и мультимодальных данных (текст + изображения).
🔵Гибкость и модульность: Можно использовать различные бекенды для хранения данных (Elasticsearch, FAISS, Weaviate, Qdrant) и кастомизировать пайплайны.
🔵Подключение LLM: Встроенная поддержка OpenAI, Hugging Face, Llama, Mistral и других моделей.

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

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

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