Как и для чего используется %s?
%s  — это Спецификатор формата и он используется для форматирования строк.
Он позволяет вставлять значения других типов (числа, объекты и т. д.) в строковые выражения, автоматически преобразуя их к строковому представлению.
%s заменяется на строковое представление переданного значения в процессе форматирования. Это удобный способ интерполяции строк.
Помимо простой интерполяции, %s полезен для оформления вывода данных в консоль, логгирования, составления SQL-запросов с подстановкой значений и других задач работы со строками. 
Библиотека собеса по Python
Он позволяет вставлять значения других типов (числа, объекты и т. д.) в строковые выражения, автоматически преобразуя их к строковому представлению.
%s заменяется на строковое представление переданного значения в процессе форматирования. Это удобный способ интерполяции строк.
Помимо простой интерполяции, %s полезен для оформления вывода данных в консоль, логгирования, составления SQL-запросов с подстановкой значений и других задач работы со строками.
Библиотека собеса по Python
👍1
  В чем разница между локальными и глобальными переменными в SQL?
Локальные переменные могут быть доступны только внутри функции, в которой они были объявлены. А глобальные переменные, будучи объявленными вне какой-либо функции, хранятся в фиксированных структурах памяти и могут использоваться во всей программе. 
Библиотека собеса по Python
Библиотека собеса по Python
👍1
  🧠 Курс «Математика для Data Science»
Математика лежит под капотом не только алгоритмов, но и всего, что мы создаём — от систем рекомендаций до маршрутизации такси.
Но главное, математика понятна, если объяснить её на языке разработки.
📘 Курс «Математика для Data Science»:
— от основ до реальных задач из собесов;
— линейная алгебра, статистика, теория вероятностей;
— визуализации, практика и живые уроки;
— поддержка менторов и комьюнити в чате.
⚡ Сегодня последний день, чтобы получить подарок: курс по базовой математике!
🗓️ Старт курса → 6 ноября
👉 Записаться на курс
Математика лежит под капотом не только алгоритмов, но и всего, что мы создаём — от систем рекомендаций до маршрутизации такси.
Но главное, математика понятна, если объяснить её на языке разработки.
📘 Курс «Математика для Data Science»:
— от основ до реальных задач из собесов;
— линейная алгебра, статистика, теория вероятностей;
— визуализации, практика и живые уроки;
— поддержка менторов и комьюнити в чате.
⚡ Сегодня последний день, чтобы получить подарок: курс по базовой математике!
🗓️ Старт курса → 6 ноября
👉 Записаться на курс
👍1
  Что делать если нужно сериализовать данные, которые не поддерживаются стандартным модулем json?
Если нужно сериализовать объекты, которые по умолчанию не поддерживаются модулем json, то есть несколько вариантов:
— Реализовать методы __getattr__ и __setattr__ в классе объекта, чтобы преобразовать его в словарь, который уже можно сериализовать в JSON.
— Использовать декоратор dataclass из модуля dataclasses для автоматической генерации методов сериализации.
— Создать собственный класс-наследник json.JSONEncoder и переопределить метод default(), чтобы указать как сериализовать нестандартные объекты.
— Использовать библиотеку marshmallow для создания схем сериализации/десериализации сложных объектов в JSON.
— Преобразовать объекты в dict или list вручную перед сериализацией с помощью методов объекта или отражения (reflection).
— Использовать другой формат сериализации, например YAML или MessagePack, который может поддерживать произвольные типы. 
Библиотека собеса по Python
— Реализовать методы __getattr__ и __setattr__ в классе объекта, чтобы преобразовать его в словарь, который уже можно сериализовать в JSON.
— Использовать декоратор dataclass из модуля dataclasses для автоматической генерации методов сериализации.
— Создать собственный класс-наследник json.JSONEncoder и переопределить метод default(), чтобы указать как сериализовать нестандартные объекты.
— Использовать библиотеку marshmallow для создания схем сериализации/десериализации сложных объектов в JSON.
— Преобразовать объекты в dict или list вручную перед сериализацией с помощью методов объекта или отражения (reflection).
— Использовать другой формат сериализации, например YAML или MessagePack, который может поддерживать произвольные типы.
Библиотека собеса по Python
👍4❤1
  К чему может быть применен декоратор?
Декораторы можно применять к:
— Обычным функциям, определенным с помощью def.
— Методам классов.
— Статическим методам и методам класса внутри классов.
— Lambda функциям.
— Методам встроенных типов в Python (например, к методам списков, словарей). 
Кстати, у нас есть курс по алгоритмам и структурам данных по скидке 40%:  https://proglib.academy/algorithms_and_data_structures 
Библиотека собеса по Python
— Обычным функциям, определенным с помощью def.
— Методам классов.
— Статическим методам и методам класса внутри классов.
— Lambda функциям.
— Методам встроенных типов в Python (например, к методам списков, словарей).
Библиотека собеса по Python
👍3
  Каким будет результат следующего выражения: -31 % 10?
Результатом выражения -31 % 10 будет 9. Это происходит потому, что для отрицательных чисел оператор % возвращает остаток от деления первого числа на второе немного другим образом. -31 % 10 = -3 — 1/10 и в ответ мы получим 10 — 1 = 9. 
Библиотека собеса по Python
Библиотека собеса по Python
👍3👏2
  🔎 Собес сам себя не пройдет
Ты готов к собеседованию? А если проверю?
Залетай к нам и забирай курсы со скидкой 40%. Только до конца октября можно узнать много нового и отточить навыки.
🎯 Забирай курсы:
🐍 python для разработчиков;
🧮 алгоритмы и структуры данных;
📝 архитектуры и шаблоны проектирования;
🧩 основы IT для новичков.
⚡️ Не упусти скидку и получи долгожданный оффер!
Ты готов к собеседованию? А если проверю?
Залетай к нам и забирай курсы со скидкой 40%. Только до конца октября можно узнать много нового и отточить навыки.
🎯 Забирай курсы:
🐍 python для разработчиков;
🧮 алгоритмы и структуры данных;
📝 архитектуры и шаблоны проектирования;
🧩 основы IT для новичков.
⚡️ Не упусти скидку и получи долгожданный оффер!
👍1
  В чём разница между is и == в Python, и когда использовать is?
is проверяет тождество (это один и тот же объект), == — равенство значений (через __eq__). Используйте is только для None, булевых (True/False) и собственных «сентинелов». Для чисел/строк/списков — ==; на совпадение is из-за интернирования полагаться нельзя. 
Библиотека собеса по Python
Библиотека собеса по Python
👍7
  Как обеспечить строгую согласованность кэша при записи в Django/DRF под высокой нагрузкой?
Короткий ответ: Делайте запись в БД в транзакции, фиксируйте событие в outbox и только после коммита инвалидируйте/перестраивайте кэш (write-through), используя версионирование ключей. Защищайтесь от stampede через короткие TTL + jitter и распределённые локи в Redis. Для чтения с реплик учитывайте лаг и маршрутизируйте горячие чтения на мастер или используйте read-your-writes токены/версии. 
Библиотека собеса по Python
  Библиотека собеса по Python
🎲 Знаешь, что хуже всего на собесе?
Когда задают простой вопрос, а ты не можешь ответить.
🤔 Это ощущение, когда понимаешь:
От «я знаю...» до «сейчас объясню!» всего один курс.
✅ Алгоритмы и структуры данных — от Big O до задач криптографии.
✅ Python для разработчиков — пиши чистый и эффективный код.
✅ Архитектуры и шаблоны — строй системы, которые масштабируются.
✅ Основы IT — всё необходимое для входа в профессию.
Выбирай любой и забирай со скидкой 40% только до конца октября.
🔗 Выбрать курс
  Когда задают простой вопрос, а ты не можешь ответить.
🤔 Это ощущение, когда понимаешь:
«Блин, я это знаю... вроде... сейчас...»
От «я знаю...» до «сейчас объясню!» всего один курс.
✅ Алгоритмы и структуры данных — от Big O до задач криптографии.
✅ Python для разработчиков — пиши чистый и эффективный код.
✅ Архитектуры и шаблоны — строй системы, которые масштабируются.
✅ Основы IT — всё необходимое для входа в профессию.
Выбирай любой и забирай со скидкой 40% только до конца октября.
🔗 Выбрать курс
У вас есть Python-сервис, который обрабатывает асинхронные запросы через asyncio. При нагрузочном тесте задержки начинают расти, хотя CPU и память почти не используются. В чём может быть причина и как её решать?
Скорее всего, внутри event loop есть блокирующие операции (синхронные вызовы к БД, файлам или тяжёлые вычисления). Их нужно вынести в отдельный процесс или поток (ProcessPoolExecutor/ThreadPoolExecutor) либо заменить на асинхронные аналоги библиотек. 
Библиотека собеса по Python
Библиотека собеса по Python
❤1👍1
  Какова амортизированная сложность push_back у динамического массива при удвоении ёмкости и почему?
O(1) амортизированно. Редкие дорогостоящие копирования «распределяются» на множество дешёвых вставок; потенциал/агрегатный анализ показывает, что суммарная стоимость m операций ≤ 3m.  Кстати, у нас сейчас действует 40% скидка на курс  Алгоритмы и структуры данных . 
Библиотека собеса по Python
  Библиотека собеса по Python
🤔 Как ускорить браузер
Закрой все вкладки со словами «MacBook», «купить ноутбук», «ноут в рассрочку». Потому что у нас есть решение лучше.
🔥 Proglib разыгрывает MacBook Pro 14. Формула простая: покупаешь любой курс до 15 ноября → учишься 2 недели → пишешь куратору #розыгрыш
Пока у тебя открыто 147 вкладок с ценами, кто-то уже прокачивает скилы и может забрать приз.
👉🏻 Выбрать курс для участия
Закрой все вкладки со словами «MacBook», «купить ноутбук», «ноут в рассрочку». Потому что у нас есть решение лучше.
🔥 Proglib разыгрывает MacBook Pro 14. Формула простая: покупаешь любой курс до 15 ноября → учишься 2 недели → пишешь куратору #розыгрыш
Пока у тебя открыто 147 вкладок с ценами, кто-то уже прокачивает скилы и может забрать приз.
👉🏻 Выбрать курс для участия
😁2
  Что такое __slots__ в Python, как они функционируют и когда их стоит применять?
__slots__ — это специальный атрибут класса, который задает фиксированный набор атрибутов для его экземпляров. Это позволяет сократить использование памяти, так как вместо хранения атрибутов в стандартном словаре (__dict__) они размещаются в фиксированной структуре. __slots__ особенно полезны, когда необходимо создать большое количество объектов одного класса, и экономия памяти имеет критическое значение. Однако стоит учитывать, что использование __slots__ ограничивает возможность добавления новых атрибутов, что может снизить гибкость классов. 
Библиотека собеса по Python
Библиотека собеса по Python
👍3❤2
  Как избежать «висячих» задач и утечек при отмене в asyncio?
Используйте TaskGroup и asyncio.timeout, всегда await-ьте созданные задачи; при отмене ловите CancelledError, делайте cleanup в finally, закрывайте ресурсы (aclose/async with), а shield применяйте только к коротким критическим секциям. 
Библиотека собеса по Python
Библиотека собеса по Python
❤3
  Как реализовать контролируемый параллелизм и backpressure в asyncio, если внешние ресурсы (БД/HTTP) ограничены?
Ограничивайте конкуренцию asyncio.Semaphore/пулами соединений, очередьйте работу через asyncio.Queue с фиксированным размером и воркерами, ставьте явные таймауты (asyncio.timeout) и прокидывайте отмену. Не запускайте «тысячи gather»; используйте TaskGroup для структурированной конкуренции, rate-limit (токен-бакет) и ретраи. 
Библиотека собеса по Python
Библиотека собеса по Python
👍4
  ⚡️ Механизм запущен, часики тикают
Прямо сейчас кто-то уже купил курс со скидкой 40%, открыл первый урок и уже на пути к MacBook Pro 14.
А ты всё ещё читаешь этот пост...
⏰ Дедлайны не ждут:
31 октября — скидка 40% сгорает
15 ноября — розыгрыш MacBook
🎯 Правила участия:
→ купить любой курс до 31 октября
→ отучиться 2 недели
→ написать #розыгрыш куратору
🕊️ Не упусти свой шанс
  Прямо сейчас кто-то уже купил курс со скидкой 40%, открыл первый урок и уже на пути к MacBook Pro 14.
А ты всё ещё читаешь этот пост...
⏰ Дедлайны не ждут:
31 октября — скидка 40% сгорает
15 ноября — розыгрыш MacBook
🎯 Правила участия:
→ купить любой курс до 31 октября
→ отучиться 2 недели
→ написать #розыгрыш куратору
🕊️ Не упусти свой шанс
Как выполнять CPU-bound работу, не блокируя event loop, и масштабироваться по ядрам?
Не гоняйте CPU в asyncio: выносите в ProcessPoolExecutor/multiprocessing или нативные модули, которые освобождают GIL. Для кратких задач — loop.run_in_executor, для долгих — отдельные процессы с пулом и ограничением конкуренции. Учитывайте стоимость сериализации: пакуйте данные в memoryview/shared memory, а не в гигантские pickles.
Библиотека собеса по Python
Не гоняйте CPU в asyncio: выносите в ProcessPoolExecutor/multiprocessing или нативные модули, которые освобождают GIL. Для кратких задач — loop.run_in_executor, для долгих — отдельные процессы с пулом и ограничением конкуренции. Учитывайте стоимость сериализации: пакуйте данные в memoryview/shared memory, а не в гигантские pickles.
Библиотека собеса по Python
👍2
  Как работать с большими строками/байтами без лишних копий и перерасхода памяти?
Не конкатенируйте по одному кусочку; для строк используйте ''.join(...)/io.StringIO, для байтов — bytearray/io.BytesIO/memoryview (срезы без копий). Стримьте по чанкам, для файлов подойдёт mmap. Помните: срез bytes копирует, memoryview — нет. 
Библиотека собеса по Python
  Библиотека собеса по Python
✨ Halloween Special — последний день магии! 👻
Успевай сегодня купить курсы со скидкой 40%!
А также участвуй в розыгрыше MacBook Pro 14 💻
После полуночи останется только тыква 🎃
🔮 Открой портал и выбери курс
  Успевай сегодня купить курсы со скидкой 40%!
А также участвуй в розыгрыше MacBook Pro 14 💻
После полуночи останется только тыква 🎃
🔮 Открой портал и выбери курс
