Справочник Программиста
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
👀 Библиотека fastjsonschema в Python

fastjsonschema — это высокопроизводительная библиотека для валидации JSON-схем в Python.

Компилирует схемы JSON в нативный Python-код, что делает её одной из самых быстрых среди аналогов.

Основные особенности библиотеки:
🔵Высокая скорость: Схема компилируется в Python-код один раз, а затем выполняется без интерпретации.
🔵Совместимость с стандартом JSON Schema: Поддерживает Draft 04, Draft 06, Draft 07 и Draft 2019-09.
🔵Минимальные зависимости: Написана на чистом Python без внешних зависимостей.
🔵Генерация исключений: В случае ошибки валидации выбрасывается подробное исключение.

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

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

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

В данной статье напишем код пяти полезных калькуляторов на Python.

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

Библиотека Art позволяет создавать ASCII-арты, стилизованного текста и случайных артов.

Поддерживает более 400 шрифтов и 1000 готовых изображений ASCII.

Основные возможности библиотеки:
🔵Создание ASCII-текста с разными шрифтами.
🔵Выбор стиля текста (более 400 шрифтов).
🔵Генерация случайных ASCII-артов.
🔵Создание ASCII-эмодзи.
🔵Вывод текста с красивым оформлением (tprint).
🔵Использование кастомных символов для текста.
🔵Простая интеграция в CLI-приложения.

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

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

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

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

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

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

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

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

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

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

➡️Установка модуля: pip install psutil

import psutil
import time


def monitor_memory_usage():
try:
while True: # Бесконечный цикл для постоянного мониторинга
# Получаем информацию о виртуальной памяти
memory = psutil.virtual_memory()
# Выводим использованную память в гигабайтах, общую память и процент использования
print(f"Использовано памяти: {memory.used / (1024 ** 3):.2f} GB /"
f" {memory.total / (1024 ** 3):.2f} GB ({memory.percent}%)")
# Задержка в 5 секунд перед следующим измерением
time.sleep(5)
except KeyboardInterrupt: # Обработка прерывания с клавиатуры (Ctrl+C)
# Сообщение о завершении мониторинга
print("Мониторинг завершен.")


# Запускаем функцию мониторинга памяти
monitor_memory_usage()


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

CleverCSV — это библиотека для работы с CSV-файлами в Python, которая автоматически определяет разделители и формат данных.

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

Основные возможности библиотеки:
🔵Автоматическое определение разделителя: Анализирует содержимое файла и определяет, какой символ используется в качестве разделителя (запятая, точка с запятой, табуляция и т. д.).
🔵Быстрая обработка CSV: Использует эвристические и машинные алгоритмы для точного и быстрого анализа структуры данных.
🔵Простота использования: предоставляет удобные функции для конвертации CSV-файлов в Python-объекты, такие как списки или pandas DataFrame.
🔵Интеграция с pandas: Можно легко использовать CleverCSV для загрузки данных в DataFrame, что упрощает анализ.

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

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

➡️Справочник Программиста. Подписаться
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

Для получения списка всех устройств и их файловых систем в коде используется модуль psutil.

➡️Установка модуля: pip install psutil

import psutil


def list_all_devices():
for partition in psutil.disk_partitions():
print(f"Устройство: {partition.device}")
print(f" Точка монтирования: {partition.mountpoint}")
print(f" Тип файловой системы: {partition.fstype}")
print(f" Опции: {partition.opts}")
print("------")


if __name__ == "__main__":
list_all_devices()


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

Библиотека Dynaconf предназначена для управления конфигурацией в Python-приложениях.

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

Основные возможности библиотеки:
🔵Многоисточниковость: Поддерживает YAML, JSON, TOML, INI, Python-файлы, а также переменные окружения и даже хранилища данных (например, Redis).
🔵Переключение окружений: Позволяет разделять настройки для различных сред (например, разработка, тестирование, продакшн).
🔵Зашифрованные настройки: Поддерживает хранение конфиденциальной информации в зашифрованном виде.
🔵Автоматическая загрузка: Настройки автоматически подгружаются из указанных источников, что упрощает процесс конфигурации.
🔵Поддержка переменных окружения: Позволяет легко переопределять настройки через переменные окружения, что удобно для контейнеризации (например, Docker).
🔵Гибкость в использовании: Можно использовать как простой словарь, но с дополнительными функциями для работы с конфигурацией.
🔵Значения по умолчанию: Можно задать стандартные значения, которые будут использоваться, если определённые параметры не заданы в конфигурации.

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

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

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

Библиотека sqladmin предоставляет административный интерфейс для работы с базами данных через SQLAlchemy и FastAPI/Flask.

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

Основные возможности библиотеки:
🔵Поддержка FastAPI и Flask: Можно интегрировать в приложения, использующие эти фреймворки.
🔵CRUD-интерфейс: Веб-интерфейс для создания, чтения, обновления и удаления записей в БД.
🔵Аутентификация и авторизация: Поддержка токенов и базовой аутентификации.
🔵Кастомизация UI: Можно настраивать поля, действия, сортировку, поиск и т. д.
🔵Поддержка фильтрации и поиска: Встроенные инструменты фильтрации записей в базе данных.
🔵Расширяемость: Поддержка кастомных действий и методов.

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

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

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

В данном shorts рассмотрим интересную задачу по Python!

Задача: Напишите программу, которая получает строку вида "часы:минуты" и возвращает время в минутах.

Развёрнутое решение:
def time_to_minutes(time_str):
# Шаг 1: Делим строку по символу ":" на две части — часы и минуты
parts = time_str.split(':')

# Шаг 2: Проверяем, что строка разделилась на две части
if len(parts) != 2:
return "Строка должна быть в формате 'часы:минуты'"

# Шаг 3: Преобразуем каждую часть (часы и минуты) в целые числа
try:
hours = int(parts[0]) # Часы
minutes = int(parts[1]) # Минуты
except ValueError:
return "Введены некорректные значения для часов или минут"

# Шаг 4: Проверяем, что количество часов и минут корректно
if hours < 0 or minutes < 0 or minutes >= 60:
return "Некорректное время (минуты должны быть от 0 до 59)"

# Шаг 5: Вычисляем общее количество минут
total_minutes = hours * 60 + minutes
return total_minutes


time_str = input("Введите строку вида часы:минуты: ")
result = time_to_minutes(time_str) # Получаем результат
print(f"Время в минутах: {result}") # Выводим результат


Короткое решение:
def time_to_minutes(time_str):
try:
# Разделяем строку по символу ":" и преобразуем в целые числа
hours, minutes = map(int, time_str.split(':'))

# Проверяем, что часы и минуты находятся в допустимых пределах
if hours < 0 or minutes < 0 or minutes >= 60:
raise ValueError # Вызываем исключение, если значения некорректны

# Возвращаем общее количество минут
return hours * 60 + minutes
except (ValueError, IndexError):
return "Ошибка: введите корректное время в формате 'часы:минуты'"


time_str = input('Введите строку вида "часы:минуты": ')
result = time_to_minutes(time_str)
print(f"Время в минутах: {result}")


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

В данной статье напишем код простого веб-приложения на Python с использованием фреймворка Flask.

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

Библиотека filetype предназначена для быстрого определения типа файлов по их сигнатурам (магическим числам), а не по расширению.

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

Основные возможности библиотеки:
🔵Определение типа файла по содержимому, а не по расширению.
🔵Поддержка множества форматов (изображения, видео, аудио, документы и т. д.).
🔵Быстрая работа, так как анализируются только первые байты файла.
🔵Лёгкость в использовании, не требует установки зависимостей.

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

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

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

Для автоматического выключения компьютера по таймеру в коде используется модуль subprocess.

import subprocess


# Функция для планирования выключения ПК
def schedule_shutdown(minutes):
try:
# Переводим минуты в секунды
seconds = minutes * 60
print(f"Компьютер будет выключен через {minutes} минут.")
# Выполнение команды shutdown для выключения через заданное количество секунд
subprocess.run(["shutdown", "/s", "/t", str(seconds)], check=True)
except subprocess.CalledProcessError as e:
# Обработка ошибок, если команда не выполнена
print(f"Ошибка при попытке выключить компьютер: {e}")


if __name__ == "__main__":
# Запрос времени у пользователя
try:
# Ввод количества минут для выключения
minutes = int(input("Введите количество минут, через которые выключить компьютер: "))

# Проверка, что время больше 0
if minutes < 1:
print("Время должно быть больше 0.")
else:
# Вызов функции для планирования выключения
schedule_shutdown(minutes)
except ValueError:
# Обработка ошибки при вводе некорректного значения
print("Пожалуйста, введите корректное число.")


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

В данной статье рассмотрим, как работает метод isdigit() в Python.

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

Библиотека pyperclip предназначена для работы с буфером обмена. Позволяет копировать текст в буфер обмена и вставлять его оттуда, поддерживая Windows, macOS и Linux.

Основные возможности библиотеки:
🔵Копирование текста в буфер обмена
🔵Получение текста из буфера обмена
🔵Проверка доступности буфера обмена
🔵Кроссплатформенная поддержка (Windows, macOS, Linux)
🔵Простота использования без дополнительных зависимостей (кроме Linux, где может потребоваться xclip или xsel)

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

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

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

Библиотека Taipy предназначена для создания интерактивных веб-приложений и управления рабочими процессами в области аналитики данных и машинного обучения.

Ориентирована на удобство разработки и интеграцию с инструментами Data Science.

Основные возможности библиотеки:
🔵Taipy GUI: Фреймворк для создания интерактивных веб-приложений.
🔵Taipy Core: Инструмент для управления сценариями обработки данных.
🔵Taipy REST API: Встроенные возможности для создания API.

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

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

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

В данном shorts напишем код для парсинга изображений из MS Bing по запросу на Python.

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

Pyee — это удобный инструмент для работы с событиями и обработчиками событий. Расширяет стандартный функционал событий в Python, предоставляя асинхронные и синхронные механизмы обработки событий.

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

Основные возможности библиотеки:
🔵Создание событий: Можно легко определять события и регистрировать обработчики.
🔵Поддержка асинхронности: Возможность использовать async-функции в качестве обработчиков событий.
🔵Расширяемость: Легко интегрируется с другими библиотеками и технологиями, такими как asyncio, trio или Twisted.

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

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

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

Для парсинга изображений в коде используется библиотека icrawler.

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

from icrawler.builtin import BingImageCrawler


def download_images(query,
max_num=10,
save_dir='images'):
crawler = BingImageCrawler(
storage={'root_dir': save_dir})
crawler.crawl(keyword=query,
max_num=max_num)


if __name__ == "__main__":
search_query = "дом"
download_images(search_query, max_num=5)


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