#полезное
😜 FastOpenAPI
FastOpenAPI – это библиотека для генерации и интеграции OpenAPI схем с использованием Pydantic v2 и различных фреймворков, таких как Falcon, Flask, Quart, Sanic, Starlette и Tornado.
🟠 Проект вдохновлён FastAPI и предоставляет аналогичный удобный для разработчика опыт создания API с автоматической генерацией документации.
🟠 С помощью FastOpenAPI вы можете легко определять маршруты, проводить валидацию данных и генерировать документацию в формате Swagger UI и ReDoc, что упрощает процесс разработки и поддержки API.
🟠 Быстрая интеграция с поддержкой строгой типизации через модели Pydantic делает библиотеку надёжным инструментом для построения современных веб-приложений.
🟠 FastOpenAPI распространяется под лицензией MIT, что делает его свободным для использования и модификации в коммерческих и некоммерческих проектах.
Гитхаб
👉 Новости 👉 База вопросов
FastOpenAPI – это библиотека для генерации и интеграции OpenAPI схем с использованием Pydantic v2 и различных фреймворков, таких как Falcon, Flask, Quart, Sanic, Starlette и Tornado.
Гитхаб
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
#Собес #bash
🤔 Разница между одинарными и двойными кавычками в Bash
Одинарные кавычки
👉 Новости 👉 База вопросов
Одинарные кавычки
' '
предотвращают интерпретацию переменных и команд, а двойные " "
позволяют их подставлять.VAR="world"
echo 'Hello $VAR' # Выведет: Hello $VAR
echo "Hello $VAR" # Выведет: Hello world
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
#Собес #bash
🤔 Как экспортировать переменную в Bash и зачем это нужно?
Чтобы сделать переменную доступной для всех запущенных процессов, используется
Теперь эта переменная доступна в дочерних процессах, например, в другом скрипте или командной оболочке.
👉 Новости 👉 База вопросов
Чтобы сделать переменную доступной для всех запущенных процессов, используется
export
:export VAR="Hello"
Теперь эта переменная доступна в дочерних процессах, например, в другом скрипте или командной оболочке.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
😬 pre-commit — ваш автоматический код-ревьюер.
Эта библиотека превращает Git-хуки в мощную систему контроля качества кода.
Вместо ручного запуска линтеров перед каждым комитом, pre-commit автоматически проверяет изменения на качество — будь то синтаксические ошибки в Python или форматирование SCSS-файлов.
GitHub
Документация
👉 Новости 👉 База вопросов
Эта библиотека превращает Git-хуки в мощную систему контроля качества кода.
Вместо ручного запуска линтеров перед каждым комитом, pre-commit автоматически проверяет изменения на качество — будь то синтаксические ошибки в Python или форматирование SCSS-файлов.
GitHub
Документация
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#полезное
👋 Совет по Python:
Использование
Метод
Хороший вопрос. Думаю, основное различие в том, что с
👉 Новости 👉 База вопросов
Использование
setdefault
Метод
setdefault()
позволяет заменить 4 строки традиционного кода, избавляя от необходимости использовать условие if и ручную инициализацию.setdefault()
чётко передаёт намерение: «Если ключ отсутствует, установить для него пустой список. Затем добавить элемент в список». Это одновременно делает код короче и понятнее Есть ли причины использовать это вместо collections.defaultdict?
Хороший вопрос. Думаю, основное различие в том, что с
setdefault
можно указывать разное значение по умолчанию при каждом вызове, тогда как у defaultdict
одно общее значение для всех отсутствующих ключей. Метод setdefault
также удобен тем, что не требует импорта =)Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍3
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
❤️🔥 Наткнулся на библиотеку art — делает ASCII-арт из текста за секунды.
Простая установка:
Пример использования:
Идеально для приветственных страничек или добавить декоративный вывод в CLI или логах
👉 Новости 👉 База вопросов
Простая установка:
pip install art
Пример использования:
from art import text2art
Art = text2art("art") # шрифт по умолчанию
print(Art)
Art_block = text2art("art", font='block', chr_ignore=True)
print(Art_block)
# Выведет крупный блок‑текст
Идеально для приветственных страничек или добавить декоративный вывод в CLI или логах
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
#Собес #bash
🤔 Как объявить переменную в Bash?
B Bash переменная объявляется без ключевого слова, просто через
Значение переменной можно получить через
👉 Новости 👉 База вопросов
B Bash переменная объявляется без ключевого слова, просто через
=
без пробелов:VAR=value
Значение переменной можно получить через
$VAR
.Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
📞 Аналогично Unix-пайпам, в Python можно строить цепочки функций, переопределяя метод
Это позволяет связывать операции так, что вывод одной функции становится входом для следующей → чисто, читаемо и удобно для композиции
Именно так LangChain реализует элегантные пайплайны вроде:
Пример:
🟠
🟠
🟠
Теперь можно обернуть любые функции в Pipe и комбинировать их в цепочку:
👉 Новости 👉 База вопросов
__or__
Это позволяет связывать операции так, что вывод одной функции становится входом для следующей → чисто, читаемо и удобно для композиции
Именно так LangChain реализует элегантные пайплайны вроде:
chat_prompt | groq_model | output_parser
Пример:
class Pipe:
def __init__(self, func):
self.func = func
def __call__(self, x):
return self.func(x)
def __or__(self, other):
return self.__class__(lambda x: other(self(x)))
Pipe
— обёртка над функцией__or__
(|) позволяет комбинировать пайпами, как в Unix__call__
делает объект вызываемым, как обычную функциюТеперь можно обернуть любые функции в Pipe и комбинировать их в цепочку:
double = Pipe(lambda x: x * 2)
square = Pipe(lambda x: x ** 2)
pipeline = double | square
print(pipeline(3)) # (3 * 2) ** 2 = 36
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
😎 Я только сегодня узнал об этом трюке с GitHub
Просто введите
Такой простой способ сэкономить время
👉 Новости 👉 База вопросов
Просто введите
repo.new
в адресной строке браузера — и сразу откроется страница создания нового репозитория на GitHub.Такой простой способ сэкономить время
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
🤓 Совет по Python:
Знаете ли вы, что можно задать максимальную длину списка, используя deque из модуля collections?
Класс
В приведённом примере
👉 Новости 👉 База вопросов
deque.maxlen
Знаете ли вы, что можно задать максимальную длину списка, используя deque из модуля collections?
Класс
deque
(двусторонняя очередь) из модуля collections поддерживает параметр maxlen
, который устанавливает максимальный размер очереди. Когда очередь достигает этого размера, добавление новых элементов автоматически удаляет элементы с противоположного конца, реализуя поведение "первым пришёл — первым ушёл" (FIFO) с ограничением по размеру.В приведённом примере
deque
имеет максимальную длину 3. При добавлении значения 4 удаляется 1, что делает такую структуру идеальной для реализации скользящего окна последних трёх элементов Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#Собес #bash
🤔 Что такое Bash shell?
Bash (Bourne Again Shell) - это командный интерпретатор, используемый в Unix и Linux. Он позволяет выполнять команды, автоматизировать задачи с помощью скриптов и управлять системой. Bash поддерживает переменные, управляющие конструкции (циклы, условия) и обработку командного вывода.
👉 Новости 👉 База вопросов
Bash (Bourne Again Shell) - это командный интерпретатор, используемый в Unix и Linux. Он позволяет выполнять команды, автоматизировать задачи с помощью скриптов и управлять системой. Bash поддерживает переменные, управляющие конструкции (циклы, условия) и обработку командного вывода.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
😵💫 Это что игра What It Prints?
Да, это онлайн-игра‑головоломка для разработчиков и студентов, где нужно угадать, что выведет код. Простая и увлекательная: показывается фрагмент, а вы должны определить его вывод
👉 Новости 👉 База вопросов
Да, это онлайн-игра‑головоломка для разработчиков и студентов, где нужно угадать, что выведет код. Простая и увлекательная: показывается фрагмент, а вы должны определить его вывод
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
👨💻 Auto PY to EXE — это open-source инструмент для упаковки Python-проектов в исполняемые файлы, который гораздо проще в использовании, чем pyfuze
Он предоставляет наглядный графический интерфейс: просто выбираешь скрипт, настраиваешь нужные параметры и нажимаешь кнопку запуска —> весь процесс упаковки проходит без необходимости возиться с командной строкой.
Дополнительно можно сохранять часто используемые настройки, отслеживать процесс в реальном времени и просматривать подробные логи.
Инструмент кроссплатформенный, поддерживает Windows, macOS и Linux, а установка через pip максимально простая:
👉 Новости 👉 База вопросов
Он предоставляет наглядный графический интерфейс: просто выбираешь скрипт, настраиваешь нужные параметры и нажимаешь кнопку запуска —> весь процесс упаковки проходит без необходимости возиться с командной строкой.
Дополнительно можно сохранять часто используемые настройки, отслеживать процесс в реальном времени и просматривать подробные логи.
Инструмент кроссплатформенный, поддерживает Windows, macOS и Linux, а установка через pip максимально простая:
pip install auto-py-to-exe
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#полезное
📞 Использование контекстного менеджера как таймера
Большинство разработчиков ассоциируют контекстные менеджеры (with-выражение) только с работой с файлами. Но на самом деле этот паттерн решает более общую задачу.
Контекстные менеджеры идеально подходят для управления любыми ресурсами, у которых есть чёткий момент начала и завершения. Например:
🔵 File I/O
🔵 Сессии логирования
🔵 Транзакции в базе данных
🔵 Сетевые и БД-соединения
🔵 Замер производительности
🔵 Управление потоками и блокировками
Вместо того чтобы вручную замерять время до и после блока кода, можно использовать контекстный менеджер — это чистое и питоничное решение.
Обычно контекстный менеджер реализуется как класс с методами
Но есть более лаконичный способ — использовать декоратор
Пример как использовать контекстный менеджер как таймер прикрепил
👉 Новости 👉 База вопросов
Большинство разработчиков ассоциируют контекстные менеджеры (with-выражение) только с работой с файлами. Но на самом деле этот паттерн решает более общую задачу.
Контекстные менеджеры идеально подходят для управления любыми ресурсами, у которых есть чёткий момент начала и завершения. Например:
with
гарантирует, что инициализация и очистка ресурса будут выполнены автоматически, даже если в блоке возникнет исключение. Это делает код чище и надёжнее.Вместо того чтобы вручную замерять время до и после блока кода, можно использовать контекстный менеджер — это чистое и питоничное решение.
Обычно контекстный менеджер реализуется как класс с методами
__enter__
и exitНо есть более лаконичный способ — использовать декоратор
@contextmanager
из модуля contextlib, чтобы писать генераторные менеджеры без лишнего шаблонного кода.Пример как использовать контекстный менеджер как таймер прикрепил
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍2
#Собес #networks
🤔 Какие бывают типы IP-адресов?
Существует четыре типа Р-адресов: публичные IP-адреса, частные ІР-адреса, статические IP-адреса и динамические IP-адреса. Они различаются по своей функции и поведению.
👉 Новости 👉 База вопросов
Существует четыре типа Р-адресов: публичные IP-адреса, частные ІР-адреса, статические IP-адреса и динамические IP-адреса. Они различаются по своей функции и поведению.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
😊 Топ-10 распространённых магических методов в Python
👉 Новости 👉 База вопросов
__init__(self)
– Инициализация нового объекта__str__(self
) – Строковое представление__repr__(self)
– Представление для отладки__len__(self)
– Длина объекта__getitem__(self, key)
– Доступ к элементу по индексу/ключу__setitem__(self, key, value)
– Установка значения по индексу/ключу__delitem__(self, key)
– Удаление элемента по ключу__eq__(self, other)
– Проверка на равенство__add__(self, other)
– Поведение оператора сложения +
__call__(self, ...)
– Делает экземпляр вызываемым как функцияPlease open Telegram to view this post
VIEW IN TELEGRAM
❤2
#полезное
👍 Совет по Python:
Функция
Встроенная функция locals() возвращает словарь, представляющий текущую локальную таблицу символов.
Таблица символов — это структура, в которой Python хранит все имена (переменные, функции, классы и т.д.), доступные в определённой области видимости.
Когда
В примере переменные
👉 Новости 👉 База вопросов
Функция
locals()
Встроенная функция locals() возвращает словарь, представляющий текущую локальную таблицу символов.
Таблица символов — это структура, в которой Python хранит все имена (переменные, функции, классы и т.д.), доступные в определённой области видимости.
Когда
locals()
вызывается внутри функции, она возвращает словарь со всеми локальными переменными, определёнными в рамках этой функции.В примере переменные
z
и x
определены локально внутри функции. Переменная y = 20
является глобальной и не относится к области видимости my_func(). Поэтому locals() внутри my_func
не включает y
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1
#статьи
👋 Измерение покрытия UI-тестами
Для покрытия UI-тестами существуют отличный инструмент – ui-coverage-scenario-tool. Он используется для анализа и визуализации покрытия. В результате ты понимаешь, какие части интерфейса были протестированы, а какие нет. Благодаря данной статье ты освоишь новый инструмент.
Читать статью
👉 Новости 👉 База вопросов
Для покрытия UI-тестами существуют отличный инструмент – ui-coverage-scenario-tool. Он используется для анализа и визуализации покрытия. В результате ты понимаешь, какие части интерфейса были протестированы, а какие нет. Благодаря данной статье ты освоишь новый инструмент.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#Собес #networks
🤔 Что такое протокол FTP?
FTP (File Transfer Protocol) - это сетевой протокол, используемый для передачи файлов между устройствами по Интернету с использованием модели клиент-сервер. Несмотря на то, что он заменяется более безопасными протоколами, такими как SFTP и SCP, FTP по-прежнему широко используется.
👉 Новости 👉 База вопросов
FTP (File Transfer Protocol) - это сетевой протокол, используемый для передачи файлов между устройствами по Интернету с использованием модели клиент-сервер. Несмотря на то, что он заменяется более безопасными протоколами, такими как SFTP и SCP, FTP по-прежнему широко используется.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🛞 Pandas vs PySpark
Если ты работаешь с небольшими данными на ноутбуке или с большими объёмами на кластере — именно Pandas и PySpark лежат в основе современной аналитики данных.
Переключаться между ними было непросто — разный синтаксис, разный подход. Поэтому держи простую шпаргалку с командами в лоб-в-лоб, чтобы упростить переход.
Что внутри:
🟠 Удобный выбор, фильтрация и сортировка строк
🟠 Группировка, агрегации и join’ы без боли
🟠 Обработка пропущенных значений
🟠 Плавный перенос логики между Pandas и PySpark
Совет: если освоишь обе библиотеки — сможешь уверенно переключаться между небольшими проектами и масштабными пайплайнами.
И не забывай:
👉 Новости 👉 База вопросов
Если ты работаешь с небольшими данными на ноутбуке или с большими объёмами на кластере — именно Pandas и PySpark лежат в основе современной аналитики данных.
Переключаться между ними было непросто — разный синтаксис, разный подход. Поэтому держи простую шпаргалку с командами в лоб-в-лоб, чтобы упростить переход.
Что внутри:
Совет: если освоишь обе библиотеки — сможешь уверенно переключаться между небольшими проектами и масштабными пайплайнами.
И не забывай:
«В Pandas ты учишься ремеслу. В PySpark — масштабированию.»
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😵💫 Text-to-Speech нового уровня
Chatterbox — первый open-source TTS, готовый к продакшену.
🟠 Задержки менее 200 мс
🟠 Синтеза речи нулевого выстрела (zero-shot) на уровне SoTA
🟠 Управления эмоциями и выразительностью
Полностью open-source
👉 Новости 👉 База вопросов
Chatterbox — первый open-source TTS, готовый к продакшену.
Полностью open-source
Please open Telegram to view this post
VIEW IN TELEGRAM