Как у вас с Python и SQL?
Вместо оценки «на восемь из десяти» расскажите, что умеете делать самостоятельно и где применяли это на практике.
Читать ответПодготовка к интервью
Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.
Проверьте, насколько резюме подходит выбранной позиции, и получите рекомендации по улучшению.
Каталог
Вместо оценки «на восемь из десяти» расскажите, что умеете делать самостоятельно и где применяли это на практике.
Читать ответЧтобы заполнить пропущенные даты последним известным значением курса, обычно используют метод заполнения пропусков вперед (forward fill). Технически это можно сделать так:
Читать ответДана строка только из скобок (){}[]. Определите, закрывается ли каждая скобка скобкой своего типа в правильном порядке. Например, ()[]{} — корректная строка, (] и ([)] — нет.
Читать ответДанные orderslog находятся в DataFrame df.
Читать ответНужно написать функцию f, которая удаляет вторую строку из первой только при совпадении с её началом. Во всех остальных случаях первая строка остаётся неизменной.
Читать ответУточните, где и для каких задач вы использовали Python: в продукте, автоматизации, анализе данных или учебных проектах.
Читать ответОграничить ожидание корутины можно через await asyncio.waitfor(coro(), timeout=5). В Python 3.11+ доступен также контекстный менеджер asyncio.timeout(5).
Читать ответВ asyncio корутины кооперативно делят поток event loop: задача выполняется до приостановки, после чего цикл может продвинуть другие готовые задачи или дождаться событий I/O.
Читать ответawait coroutine выполняет корутину в текущей задаче и ждёт её результата. createtask создаёт отдельную Task, позволяя ей продвигаться конкурентно с другими задачами event loop.
Читать ответСинхронный requests можно выполнить в рабочем потоке, чтобы не занимать event loop. Сам запрос при этом остаётся блокирующим для этого потока.
Читать ответАсинхронный timeout ждёт завершения задачи до дедлайна, затем запрашивает отмену и корректно освобождает ресурсы. Это кооперативная отмена, а не принудительное завершение потока.
Читать ответtime.sleep и синхронный requests блокируют поток event loop. Таймер asyncio.waitfor не сможет вовремя обработать отмену, поэтому такой timeout не гарантирует остановку по настенным часам.
Читать ответ