Выборка топ‑10 покупателей с более чем пятью покупками
Используйте JOIN пользователей с покупками, GROUP BY, HAVING COUNT(*) > 5 и LIMIT 10 после сортировки по убыванию количества. Считать нужно записи Purchase, не сумму count_products.
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
Используйте JOIN пользователей с покупками, GROUP BY, HAVING COUNT(*) > 5 и LIMIT 10 после сортировки по убыванию количества. Считать нужно записи Purchase, не сумму count_products.
Читать ответСвязь book_id=created_book.id корректна. temp не используется и должен быть удалён; создание книги и обложек нужно объединить транзакцией, а исходный словарь не мутировать.
Читать ответПередайте корутины в asyncio.gather или создайте задачи до ожидания. Простое присваивание coro(...) создаёт объект корутины, но не запускает его; последовательные await дают около 6 секунд.
Читать ответПосле получения статьи проверьте archived и выберите отдельный шаблон уведомления. Архивность не равна отсутствию: по заданному требованию можно вернуть страницу с сообщением, не раскрывая текст статьи.
Читать ответВывод будет [10], затем [123], затем [10, 'a']. Первый и третий вызовы используют общий список по умолчанию, а второй получает отдельный явно созданный пустой список.
Читать ответДостаточно return n % 2 != 0. В Python при положительном делителе 2 остаток для целого числа равен 0 или 1, поэтому отдельная проверка на -1 не нужна.
Читать ответВывод: True, False, 10 и []. or возвращает первый истинный операнд либо последний; and — первый ложный либо последний. Результат не обязан иметь тип bool.
Читать ответalias = source не копирует список: оба имени ссылаются на один изменяемый объект. Поэтому alias.append(5) меняет объект, который затем выводится и через source.
Читать ответРазделите FileStatManager на счётчики TXT/CSV, хранилище статистики, консольный интерфейс и отдельную службу файловых операций. Удаление каталога не относится к вычислению статистики и требует особых ограничений.
Читать ответВызовите функцию внутри обёртки, сохраните результат, напечатайте его и верните. Если функция выбросит исключение, печати результата не будет, а ошибка продолжит распространяться.
Читать ответБлокируйте оба счёта в одинаковом глобальном порядке и меняйте оба баланса внутри критической секции. Деньги храните целыми минимальными единицами, не float; проверяйте сумму и достаточность средств.
Читать ответДекоратор хранит результаты в словаре по ключу из аргументов. При повторном ключе возвращается кеш, при новом — выполняется функция. Такой вариант подходит для чистых синхронных функций.
Читать ответ