Библиотека собеса по Python | вопросы с собеседований
6.03K subscribers
677 photos
14 videos
545 links
Вопросы с собеседований по Python и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/6587aafa

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
Как и для чего используется %s?

%s
— это Спецификатор формата и он используется для форматирования строк.
Он позволяет вставлять значения других типов (числа, объекты и т. д.) в строковые выражения, автоматически преобразуя их к строковому представлению.

%s заменяется на строковое представление переданного значения в процессе форматирования. Это удобный способ интерполяции строк.
Помимо простой интерполяции, %s полезен для оформления вывода данных в консоль, логгирования, составления SQL-запросов с подстановкой значений и других задач работы со строками.


Библиотека собеса по Python
👍1
В чем разница между локальными и глобальными переменными в SQL?

Локальные переменные могут быть доступны только внутри функции, в которой они были объявлены. А глобальные переменные, будучи объявленными вне какой-либо функции, хранятся в фиксированных структурах памяти и могут использоваться во всей программе.

Библиотека собеса по Python
👍1
🧠 Курс «Математика для Data Science»

Математика лежит под капотом не только алгоритмов, но и всего, что мы создаём — от систем рекомендаций до маршрутизации такси.

Но главное, математика понятна, если объяснить её на языке разработки.

📘 Курс «Математика для Data Science»:

— от основ до реальных задач из собесов;
— линейная алгебра, статистика, теория вероятностей;
— визуализации, практика и живые уроки;
— поддержка менторов и комьюнити в чате.

Сегодня последний день, чтобы получить подарок: курс по базовой математике!

🗓️ Старт курса → 6 ноября

👉 Записаться на курс
👍1
Что делать если нужно сериализовать данные, которые не поддерживаются стандартным модулем json?

Если нужно сериализовать объекты, которые по умолчанию не поддерживаются модулем json, то есть несколько вариантов:

— Реализовать методы __getattr__ и __setattr__ в классе объекта, чтобы преобразовать его в словарь, который уже можно сериализовать в JSON.

— Использовать декоратор dataclass из модуля dataclasses для автоматической генерации методов сериализации.

— Создать собственный класс-наследник json.JSONEncoder и переопределить метод default(), чтобы указать как сериализовать нестандартные объекты.

— Использовать библиотеку marshmallow для создания схем сериализации/десериализации сложных объектов в JSON.

— Преобразовать объекты в dict или list вручную перед сериализацией с помощью методов объекта или отражения (reflection).

— Использовать другой формат сериализации, например YAML или MessagePack, который может поддерживать произвольные типы.


Библиотека собеса по Python
👍41
К чему может быть применен декоратор?

Декораторы можно применять к:

— Обычным функциям, определенным с помощью def.
— Методам классов.
— Статическим методам и методам класса внутри классов.
— Lambda функциям.
— Методам встроенных типов в Python (например, к методам списков, словарей).


Кстати, у нас есть курс по алгоритмам и структурам данных по скидке 40%: https://proglib.academy/algorithms_and_data_structures

Библиотека собеса по Python
👍3
Каким будет результат следующего выражения: -31 % 10?

Результатом выражения -31 % 10 будет 9. Это происходит потому, что для отрицательных чисел оператор % возвращает остаток от деления первого числа на второе немного другим образом. -31 % 10 = -3 — 1/10 и в ответ мы получим 10 — 1 = 9.

Библиотека собеса по Python
👍3👏1
🔎 Собес сам себя не пройдет

Ты готов к собеседованию? А если проверю?

Залетай к нам и забирай курсы со скидкой 40%. Только до конца октября можно узнать много нового и отточить навыки.

🎯 Забирай курсы:

🐍 python для разработчиков;
🧮 алгоритмы и структуры данных;
📝 архитектуры и шаблоны проектирования;
🧩 основы IT для новичков.

Не упусти скидку и получи долгожданный оффер!
👍1
В чём разница между is и == в Python, и когда использовать is?

is проверяет тождество (это один и тот же объект), == — равенство значений (через __eq__). Используйте is только для None, булевых (True/False) и собственных «сентинелов». Для чисел/строк/списков — ==; на совпадение is из-за интернирования полагаться нельзя.

Библиотека собеса по Python
👍5
Как обеспечить строгую согласованность кэша при записи в Django/DRF под высокой нагрузкой?

Короткий ответ: Делайте запись в БД в транзакции, фиксируйте событие в outbox и только после коммита инвалидируйте/перестраивайте кэш (write-through), используя версионирование ключей. Защищайтесь от stampede через короткие TTL + jitter и распределённые локи в Redis. Для чтения с реплик учитывайте лаг и маршрутизируйте горячие чтения на мастер или используйте read-your-writes токены/версии.

Библиотека собеса по Python