Справочник Программиста
6.37K subscribers
1.29K photos
376 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
👀 Библиотека pyinstrument в Python

Библиотека pyinstrument предназначена для профилирования кода на Python и позволяет отслеживать, сколько времени затрачивает выполнение различных частей программы.

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

Основные особенности библиотеки:
🔵Простота использования: Для использования библиотеки достаточно просто импортировать её и запустить профилирование.
🔵Текстовый и HTML-отчёт: Результаты профилирования можно вывести в виде текстового отчёта в консоли или в более наглядном HTML-формате.
🔵Точное измерение времени: Использует стеки вызовов для точного измерения времени, затрачиваемого на выполнение каждой функции, включая время, проведённое в подфункциях.
🔵Поддержка многозадачности: Поддерживает профилирование многозадачных приложений, например, когда используется асинхронное программирование с asyncio.

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

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥3❤‍🔥2
Tkinter Designer — это инструмент для упрощения создания пользовательских интерфейсов (GUI) в Python.

Автоматизирует процесс разработки интерфейса: вместо ручного написания кода для каждого элемента интерфейса, разработчики могут использовать визуальный редактор Figma, а затем сгенерировать Python-код на основе созданного макета.

Основные особенности:
🔵Интеграция с Figma для создания макетов интерфейсов.
🔵Автоматическая генерация Python-кода на основе макетов.
🔵Простота использования, подходящая для новичков.
🔵Поддержка графических ресурсов из Figma (иконки, изображения, цвета).
🔵Экономия времени на разработке пользовательских интерфейсов.

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

📱 Репозиторий
⚙️ Инструкция

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

Библиотека Django-cachalot предназначена для кэширования запросов к базе данных в Django.

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

Основные возможности:
🔵Автоматическое кэширование SELECT-запросов ORM.
🔵Автоматическая инвалидизация кэша при изменении данных (INSERT, UPDATE, DELETE).
🔵Поддержка сложных запросов, включая JOIN, аннотации, агрегации и подзапросы.
🔵Совместимость с основными базами данных Django (PostgreSQL, MySQL, SQLite).
🔵Поддержка популярных бекендов кэширования (Redis, Memcached и др.).

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

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

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

Библиотека CairoSVG позволяет конвертировать SVG в другие форматы, такие как PNG, PDF, PostScript и т.д.

Основные возможности библиотеки:
🔵Конвертация SVG в PNG: Преобразование в растровые изображения для использования в веб-разработке или приложениях.
🔵Конвертация SVG в PDF: Удобно для создания отчетов и документов.
🔵Конвертация в PostScript: Полезно для полиграфической печати.
🔵Поддержка различных особенностей SVG: Обрабатывает пути, градиенты, текст, стили и трансформации.

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

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

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

В данной статье рассмотрим, как с помощью встроенного модуля calendar можно создавать и выводить календари.

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

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

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

Основные возможности библиотеки:
🔵Преобразование чисел в текстовые строки: Преобразование целых и дробных чисел в текст.
🔵Генерация порядковых числительных: Преобразование чисел в порядковые числительные.
🔵Генерация форм множественного числа: Преобразование существительных в форму множественного числа в зависимости от числа.
🔵Преобразование чисел в валютные форматы: Форматирование чисел как валютные суммы.
🔵Определение форм числительных: Приведение числительных в нужную форму для правильного использования.
🔵Генерация текста с артиклями: Добавление артиклей перед числами и словами.

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

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

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

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

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

import yfinance as yf


def get_last_price(stock_symbol):
"""
Получить последнюю цену акции.

:param stock_symbol: Символ акции (например, "AAPL")
:return: Последняя цена или сообщение об ошибке.
"""
try:
stock = yf.Ticker(stock_symbol)
data = stock.history(period='1d')
if data.empty:
if stock.info.get("regularMarketPrice") is None:
return f"Данные по '{stock_symbol}' не найдены или акция делистирована. Проверьте правильность ввода."
else:
return f"Данные по '{stock_symbol}' недоступны для выбранного периода."
last_price = data['Close'].iloc[-1]
return f"Последняя цена акции {stock_symbol}: {last_price} USD"
except Exception as e:
return f"Произошла ошибка при получении данных: {e}"


if __name__ == "__main__":
# Запрос символа акции у пользователя
stock_symbol = input("Введите символ акции (например, AAPL): ")

# Вывод последней цены
print(get_last_price(stock_symbol))


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

Библиотека Twisted предназначена для создания сетевых приложений. Предоставляет асинхронный фреймворк, который позволяет работать с сетевыми протоколами, такими как HTTP, SMTP, POP3, IMAP, FTP, SSH, DNS и многими другими.

Подходит для разработки серверов, клиентов и прокси.

Основные особенности библиотеки:
🔵Асинхронная архитектура: Основан на событийной модели и использует цикл событий, чтобы обеспечивать высокую производительность. Вместо блокирующего ввода/вывода используются отложенные вызовы (Deferred), что позволяет работать с большим количеством соединений одновременно.
🔵Поддержка множества протоколов: Имеет готовые реализации многих сетевых протоколов, что упрощает разработку сетевых приложений.
🔵Расширяемость: Предоставляет базовые классы и интерфейсы для создания собственных протоколов и приложений.
🔵Кроссплатформенность: Работает на различных платформах, включая Windows, macOS и Linux.
🔵Инструменты для тестирования: Включает встроенные утилиты для тестирования сетевых приложений, что облегчает разработку и отладку.

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

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

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

Библиотека calendar-widget предоставляет удобный виджет календаря для использования в графических интерфейсах, таких как Tkinter.

Основные особенности библиотеки:
🔵Отображение месяцев и дней: Календарь отображает месяцы и дни, что позволяет пользователям выбирать даты.
🔵Настройки: Можно настроить внешний вид календаря, включая шрифт, цвет и другие параметры.
🔵Обработка событий: Позволяет отслеживать выбор дат, что полезно для приложений, которые требуют ввода данных с датами.

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

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

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

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

from pathlib import Path


def find_large_files(folder_path, size_threshold_mb):
# Преобразуем порог размера в байты
size_threshold_bytes = size_threshold_mb * 1024 * 1024

# Создаём объект Path для указанной папки
folder = Path(folder_path)

# Рекурсивно проходим по всем файлам в папке и подкаталогах
for file_path in folder.rglob('*'):
# Проверяем, является ли найденный объект файлом
if file_path.is_file():
try:
# Получаем размер файла в байтах
file_size = file_path.stat().st_size

# Если размер файла превышает указанный порог, выводим его путь и размер в МБ
if file_size > size_threshold_bytes:
print(f"{file_path} - {file_size / (1024 ** 2):.2f} MB")
except FileNotFoundError:
# Если файл был удалён до обработки, игнорируем ошибку
pass


# Пример: найти файлы больше 1024 МБ в папке "C:/"
find_large_files("C:/", 1024)


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

Библиотека PyCryptodome предназначена для работы с криптографией в Python. Предоставляет инструменты для шифрования, дешифрования, генерации ключей и цифровой подписи.

Считается более современной и поддерживаемой альтернативой PyCrypto, которая уже не обновляется.

Основные возможности библиотеки:
🔵Шифрование и дешифрование: Поддержка симметричных и асимметричных алгоритмов (AES, RSA, DES3 и др.).
🔵Хеширование: Реализация популярных алгоритмов (SHA-256, SHA-512, MD5 и др.).
🔵Генерация случайных чисел: Использование криптографически безопасного генератора.
🔵Цифровые подписи: Создание и проверка подписи (RSA, DSA).
🔵Управление ключами: Генерация, экспорт и импорт ключей в форматах PEM, DER.
🔵Поддержка режимов шифрования: Работа с режимами CBC, GCM, EAX, и другими.
🔵Аутентифицированное шифрование: Поддержка алгоритмов AES-GCM, ChaCha20-Poly1305.

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

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

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

Помню как вам зашли посты про получение случайных изображений кошек и собак, поэтому держите уток 😉

Для обращения к Random Duck API в коде используется библиотека requests.

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

import requests
from pathlib import Path


def get_random_duck():
# URL для получения случайной картинки утки
url = "https://random-d.uk/api/v2/random"
try:
# Выполнение GET-запроса для получения данных
response = requests.get(url)
response.raise_for_status() # Проверка на успешный статус запроса
# Возвращаем URL картинки утки из полученного JSON
return response.json().get("url")
except requests.RequestException:
# В случае ошибки возвращаем None
return None


def save_duck_image(image_url, folder="ducks"):
# Определение пути для папки, где будут храниться картинки
folder_path = Path(folder)
folder_path.mkdir(parents=True, exist_ok=True) # Создание папки, если её нет

try:
# Запрос для получения картинки по URL
response = requests.get(image_url)
response.raise_for_status() # Проверка на успешный статус запроса
# Получение имени файла из URL картинки
image_name = Path(image_url).name
# Полный путь для сохранения файла
file_path = folder_path / image_name

# Открытие файла для записи в бинарном режиме и сохранение содержимого
with file_path.open('wb') as file:
file.write(response.content)

# Выводим сообщение о успешном сохранении
print(f"Картинка сохранена: {file_path}")
except requests.RequestException:
# В случае ошибки при скачивании выводим сообщение
print("Ошибка при скачивании картинки")


if __name__ == "__main__":
# Получение случайной картинки утки
duck_image_url = get_random_duck()
if duck_image_url:
# Если URL картинки получен, сохраняем изображение
save_duck_image(duck_image_url)
else:
# Если не удалось получить URL картинки, выводим ошибку
print("Не удалось получить изображение")


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

Библиотека FastAPI-Admin позволяет добавлять административную панель к приложениям, созданным с использованием фреймворка FastAPI.

Предназначена для управления данными приложения через веб-интерфейс, предоставляя CRUD-функционал и удобную настройку интерфейса.

Основные возможности библиотеки:
🔵Автоматическое создание CRUD-интерфейса: Поддержка операций создания, чтения, обновления и удаления записей в базе данных.
🔵Гибкость и расширяемость: Легко настраиваемые модели и интерфейсы. Возможность создания своих компонентов и настроек.
🔵Интеграция с популярными базами данных: Работает с такими ORM, как SQLAlchemy, Tortoise ORM, и другими.
🔵Поддержка RBAC (Role-Based Access Control): Возможность настройки ролей и разрешений для пользователей.
🔵Простая настройка интерфейса: Современный и удобный интерфейс, основанный на Ant Design Pro. Возможность кастомизации дизайна и добавления новых страниц.
🔵Авторизация и аутентификация: Готовые решения для авторизации пользователей.

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

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

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

В данном shorts напишем код для конвертации видео в GIF на Python.

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

Для преобразования видео в GIF в коде используется библиотека moviepy.

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

from moviepy.editor import VideoFileClip


def convert_video_to_gif(video_path, gif_path):
video = VideoFileClip(video_path)
video.write_gif(gif_path, fps=60)


convert_video_to_gif("video.mp4",
"output.gif")


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