🛡 Автоматизация ограничения скорости запросов в Python
SlowAPI – это удобный и гибкий инструмент для контроля и ограничения частоты запросов в ваших Python-приложениях.
🔥Основная задача SlowAPI – позволить разработчикам легко настраивать лимиты запросов для API, REST-эндпоинтов или любых других HTTP-обработчиков.
Установка библиотеки:
💻 GitHub
✔️ Этот инструмент упрощает управление ограничениями скорости, поддерживает гибкие правила (например, разные лимиты для разных пользователей) и легко интегрируется с FastAPI и Flask.
✅ Мы в Max – подписывайся
SlowAPI – это удобный и гибкий инструмент для контроля и ограничения частоты запросов в ваших Python-приложениях.
Он построен на основе Redis и FastAPI, что делает его отличным выбором для веб-приложений, которым нужно защититься от злоупотреблений или DDoS-атак.
🔥Основная задача SlowAPI – позволить разработчикам легко настраивать лимиты запросов для API, REST-эндпоинтов или любых других HTTP-обработчиков.
Установка библиотеки:
pip install slowapi
💻 GitHub
✔️ Этот инструмент упрощает управление ограничениями скорости, поддерживает гибкие правила (например, разные лимиты для разных пользователей) и легко интегрируется с FastAPI и Flask.
✅ Мы в Max – подписывайся
👍2
🔥 Встроенные методы Python
1️⃣Работа с числами
2️⃣Работа со строками
3️⃣Работа со списками и коллекциями
4️⃣Преобразование типов
5️⃣Другие полезные функции
✅ Мы в Max – подписывайся
1️⃣Работа с числами
abs(x) – модуль числа
round(x, n) – округление до n знаков
min() / max() – минимальное/максимальное значение
sum() – сумма элементов
2️⃣Работа со строками
len(s) – длина строки
str.upper() / str.lower() – преобразование регистра
str.split() – разбиение строки по разделителю
str.join() – объединение списка в строку
3️⃣Работа со списками и коллекциями
list.append(x) – добавление элемента
list.sort() – сортировка списка
sorted() – возвращает новый отсортированный список
filter() / map() – функциональная обработка данных
4️⃣Преобразование типов
int() / float() / str() – приведение типов
bool() – проверка на истинность
list() / tuple() / set() – создание коллекций
5️⃣Другие полезные функции
type(x) – проверка типа объекта
isinstance() – проверка принадлежности к классу
enumerate() – нумерация элементов
zip() – попарное объединение коллекций
✅ Мы в Max – подписывайся
👍2❤1
⭐️ Разница между списком и кортежем в Python
Список — изменяемый (можно менять элементы), записывается в [ ]
Кортеж — неизменяемый (нельзя изменить), записывается в ( )
Преобразование списка в кортеж:
Кортеж из одного элемента:
⚠️ Важно: Кортеж определяется запятой, а не скобками!
✅ Мы в Max – подписывайся
Список — изменяемый (можно менять элементы), записывается в [ ]
Кортеж — неизменяемый (нельзя изменить), записывается в ( )
Преобразование списка в кортеж:
list1 = [1, 2, 3]
print(tuple(list1)) # Вывод: (1, 2, 3)
Кортеж из одного элемента:
list1 = [1]
print(tuple(list1)) # Вывод: (1,)
⚠️ Важно: Кортеж определяется запятой, а не скобками!
✅ Мы в Max – подписывайся
❤2👍1🔥1
😎 Приятных выходных, программисты
✅ Мы в Max – подписывайся
Избегай крайностей: идеальный баланс находится посредине.
✅ Мы в Max – подписывайся
😁6👀1
⚙️ Автоматизация управления кластерами PostgreSQL с Patroni
Patroni — это мощное и гибкое решение для управления высокодоступными кластерами PostgreSQL.
🔹 Основной задачей Patroni является обеспечение надежного переключения роли ведущего узла на резервный узел, что критически важно для высокодоступных систем.
Установка библиотеки:
💻 GitHub
✔️ Этот инструмент существенно упрощает администрирование баз данных, обеспечивая автоматическое переключение ролей узлов, поддержку различных типов репликации и интеграцию с распределёнными системами хранения конфигурации.
✅ Мы в Max – подписывайся
Patroni — это мощное и гибкое решение для управления высокодоступными кластерами PostgreSQL.
Он выполняет роль внешнего сервиса по отношению к PostgreSQL, действуя как менеджер кластера.
🔹 Основной задачей Patroni является обеспечение надежного переключения роли ведущего узла на резервный узел, что критически важно для высокодоступных систем.
Установка библиотеки:
pip install patroni
💻 GitHub
✔️ Этот инструмент существенно упрощает администрирование баз данных, обеспечивая автоматическое переключение ролей узлов, поддержку различных типов репликации и интеграцию с распределёнными системами хранения конфигурации.
✅ Мы в Max – подписывайся
👍2❤1
This media is not supported in your browser
VIEW IN TELEGRAM
❗️ Визуальные эффекты для терминала
TerminalTextEffects — эта библиотека, предназначенная для улучшения визуального восприятия текста в терминале.
🔸 Она предлагает множество анимаций и эффектов, которые делают вывод более привлекательным и интересным для пользователя.
Установка библиотеки:
💻 GitHub
С помощью этой библиотеки вы можете добавлять различные визуальные эффекты в ваш проект, делая его более интерактивным.
✅ Мы в Max – подписывайся
TerminalTextEffects — эта библиотека, предназначенная для улучшения визуального восприятия текста в терминале.
🔸 Она предлагает множество анимаций и эффектов, которые делают вывод более привлекательным и интересным для пользователя.
Установка библиотеки:
pip install terminaltexteffects
💻 GitHub
С помощью этой библиотеки вы можете добавлять различные визуальные эффекты в ваш проект, делая его более интерактивным.
✅ Мы в Max – подписывайся
👍2
⭐️ GET, POST, PUT…
Краткое описание основных HTTP-запросов:
✅ Мы в Max – подписывайся
Краткое описание основных HTTP-запросов:
▫️GET:
Извлекает ресурсы с сервера.
▫️PUT:
Обновляет или создает ресурс.
▫️POST:
Создает новые ресурсы.
▫️DELETE:
Удаляет ресурс.
▫️PATCH:
Вносит частичные изменения в ресурс.
▫️HEAD:
Запрашивает метаданные ресурса, аналогично GET, но без тела ответа.
▫️CONNECT:
Устанавливает туннель к серверу для передачи данных.
▫️OPTIONS:
Определяет доступные методы для целевого ресурса.
▫️TRACE:
Возвращает запрос, чтобы проверить путь к ресурсу.
✅ Мы в Max – подписывайся
🔥4
🧬 Бесконечный итератор в Python
Функция cycle() из модуля itertools создает бесконечный итератор на основе переданной итерируемой последовательности (например, списка или строки).
🟢Когда итератор достигает конца данной последовательности, он начинает снова вызывать элементы с самого начала, продолжая цикл бесконечно.
🟢Использование этой функции может быть полезно, например, для создания механизма, который будет чередовать выполнение задач в многопоточных или многопроцессорных приложениях, обеспечивая равномерное распределение нагрузки или обработку данных.
✅ Мы в Max – подписывайся
Функция cycle() из модуля itertools создает бесконечный итератор на основе переданной итерируемой последовательности (например, списка или строки).
🟢Когда итератор достигает конца данной последовательности, он начинает снова вызывать элементы с самого начала, продолжая цикл бесконечно.
Синтаксис:itertools.cycle(iterable)
где:iterable- исходная последовательность, из которой будет создан бесконечный цикл.
🟢Использование этой функции может быть полезно, например, для создания механизма, который будет чередовать выполнение задач в многопоточных или многопроцессорных приложениях, обеспечивая равномерное распределение нагрузки или обработку данных.
✅ Мы в Max – подписывайся
👍4
🙂 Методы списков Python
✅ Мы в Max – подписывайся
Комбинация этих методов позволяет эффективно работать со списками и упрощает решение задач, связанных с обработкой данных в Python.
✅ Мы в Max – подписывайся
👍6❤1
🙂 В коде есть много ошибок, а в понедельнике — всего одна: необходимость работать
✅ Мы в Max – подписывайся
have a nice day!
✅ Мы в Max – подписывайся
❤5
☁️ Быстрый обзор Requests, HTTPX и AIOHTTP
▪️ Requests — подходит для простых скриптов и проектов.
▪️ AIOHTTP — лучший выбор для высокопроизводительных asyncio-приложений.
▪️ HTTPX — идеален для тех, кто использует как синхронный, так и асинхронный код.
✅ Мы в Max – подписывайся
▪️ Requests — подходит для простых скриптов и проектов.
▪️ AIOHTTP — лучший выбор для высокопроизводительных asyncio-приложений.
▪️ HTTPX — идеален для тех, кто использует как синхронный, так и асинхронный код.
✅ Мы в Max – подписывайся
👍2
📔 Превращаем электронные книги в аудиокниги
Если удобнее слушать книги, чем читать, попробуйте eBook2Audiobook.
Инструмент позволяет быстро конвертировать EPUB и другие форматы в полноценные аудиокниги.
Установка библиотеки:
💻 GitHub
Полезный инструмент для тех, кто хочет слушать книги в дороге, во время тренировок или просто разгрузить глаза после рабочего дня.
✅ Мы в Max – подписывайся
Если удобнее слушать книги, чем читать, попробуйте eBook2Audiobook.
Инструмент позволяет быстро конвертировать EPUB и другие форматы в полноценные аудиокниги.
Установка библиотеки:
pip install coqui-tts==0.24.2 pydub nltk beautifulsoup4 ebooklib tqdm gradio==4.44.0
python -m nltk.downloader punkt
💻 GitHub
Полезный инструмент для тех, кто хочет слушать книги в дороге, во время тренировок или просто разгрузить глаза после рабочего дня.
✅ Мы в Max – подписывайся
👍2🔥2
🔥 Сортировка веток в Git
При выполнении команды git branch в репозитории пользователи получают список веток по умолчанию в алфавитном порядке.
Для сортировки веток по дате последнего коммита используется команда:
Существуют и другие параметры для сортировки веток:
✔️ Для установки одного из этих параметров сортировки по умолчанию для всех репозиториев используется следующая команда:
Эта настройка позволит получать список веток в том порядке, который наиболее удобен для пользователя.
✅ Мы в Max – подписывайся
При выполнении команды git branch в репозитории пользователи получают список веток по умолчанию в алфавитном порядке.
Для сортировки веток по дате последнего коммита используется команда:
git branch --sort=-committerdate
Существуют и другие параметры для сортировки веток:
🟠authordate — сортировка по дате создания коммита.
🟠committerdate — сортировка по дате, когда коммит был завершён.
🟠creatordate — сортировка по дате создания ветки.
🟠objectsize — сортировка по размеру объектов.
🟠taggerdate — сортировка по дате добавления тега.
✔️ Для установки одного из этих параметров сортировки по умолчанию для всех репозиториев используется следующая команда:
git config --global branch.sort -committerdate
Эта настройка позволит получать список веток в том порядке, который наиболее удобен для пользователя.
✅ Мы в Max – подписывайся
👍2❤1
Python programs to print.pdf
222.4 KB
⭐ Паттерны для создания визуальных форм в Python
✅ Мы в Max – подписывайся
Выше приведены примеры различных визуальных форм, которые можно напечатать в консоли.
✅ Мы в Max – подписывайся
👍1
❗️Как не дать компьютеру уснуть во время выполнения Python-скриптов
Wakepy — это удобная библиотека для Python, предназначенная для предотвращения перехода компьютера в спящий режим во время выполнения долгосрочных задач.
〰️ Она позволяет сохранить активность системы, используя системные API и команды, без необходимости прибегать к «искусственным» методам, таким как движение мыши или нажатие клавиш.
🔴Система может активировать заставку или заблокировать экран, но ЦП будет работать:
🟣Для задач, требующих активного экрана, используйте:
✔️ Используйте Wakepy, чтобы уверенно управлять состоянием вашего компьютера во время любых длительных задач.
Установка библиотеки:
💻 GitHub
✅ Мы в Max – подписывайся
Wakepy — это удобная библиотека для Python, предназначенная для предотвращения перехода компьютера в спящий режим во время выполнения долгосрочных задач.
〰️ Она позволяет сохранить активность системы, используя системные API и команды, без необходимости прибегать к «искусственным» методам, таким как движение мыши или нажатие клавиш.
🔴Система может активировать заставку или заблокировать экран, но ЦП будет работать:
from wakepy import keep
with keep.running():
🟣Для задач, требующих активного экрана, используйте:
from wakepy import keep
with keep.presenting():
✔️ Используйте Wakepy, чтобы уверенно управлять состоянием вашего компьютера во время любых длительных задач.
Установка библиотеки:
pip install wakepy
💻 GitHub
✅ Мы в Max – подписывайся
❤2👍2🔥1👀1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 Список основных кодов состояния HTTP с пояснениями
✅ Мы в Max – подписывайся
🟢200: Запрос успешно выполнен.
🟠201: Новый ресурс создан.
🟢202: Запрос принят, но не обработан.
🟠204: Нет содержимого для отправки.
🟢301: Ресурс перемещен навсегда.
🟠302: Ресурс временно перемещен.
🟢304: Ответ не изменен, используйте кэш.
🟠400: Ошибка клиента в запросе.
🟢401: Необходима аутентификация.
🟠403: Доступ запрещен, клиент известен.
🟢404: Ресурс не найден.
🟠405: Метод запроса не поддерживается.
🟢408: Время ожидания запроса истекло.
🟠500: Ошибка сервера.
🟢501: Метод не поддерживается.
🟠502: Неверный ответ от шлюза.
🟢503: Сервер недоступен.
🟠504: Время ожидания шлюза истекло.
✅ Мы в Max – подписывайся
👍1🔥1
🔥 Команды пакетного менеджера pip: кратко и ясно
Эти команды помогут эффективно управлять пакетами Python!
✅ Мы в Max – подписывайся
1️⃣ Установка пакета:
🟠pip install <pack_name>— устанавливает указанный пакет.
🟠pip install --upgrade <pack_name>— обновляет пакет до последней версии.
2️⃣ Удаление пакета:
🟠pip uninstall <pack_name>— удаляет указанный пакет.
3️⃣ Поиск пакета:
🟠pip search <search_pack>— ищет пакеты по ключевому слову.
4️⃣ Просмотр установленных пакетов:
🟠pip list— выводит список всех установленных пакетов с версиями.
5️⃣ Экспорт и установка пакетов:
🟠pip freeze > requirements.txt— сохраняет список пакетов в файл.
🟠pip install -r requirements.txt— устанавливает пакеты из файла.
6️⃣ Информация о пакете:
🟠pip show <pack_name>— отображает подробности о пакете (версия, зависимости, местоположение).
7️⃣ Обновление pip:
🟠pip install --upgrade pip— обновляет сам пакетный менеджер.
Эти команды помогут эффективно управлять пакетами Python!
✅ Мы в Max – подписывайся
🔥3👍1